ONOS-5309 Clearing installables from intent data object on successful uninstallation
Change-Id: Ic77af12f98bc1519efb2e2703223e340aa5b20e4 (cherry picked from commit 24389970)
Showing
2 changed files
with
5 additions
and
2 deletions
| ... | @@ -114,7 +114,8 @@ public class IntentData { //FIXME need to make this "immutable" | ... | @@ -114,7 +114,8 @@ public class IntentData { //FIXME need to make this "immutable" |
| 114 | public IntentData(IntentData original, List<Intent> installables) { | 114 | public IntentData(IntentData original, List<Intent> installables) { |
| 115 | this(original); | 115 | this(original); |
| 116 | 116 | ||
| 117 | - this.installables = ImmutableList.copyOf(checkNotNull(installables)); | 117 | + this.installables = checkNotNull(installables).isEmpty() ? |
| 118 | + Collections.emptyList() : ImmutableList.copyOf(installables); | ||
| 118 | } | 119 | } |
| 119 | 120 | ||
| 120 | // kryo constructor | 121 | // kryo constructor | ... | ... |
| ... | @@ -36,6 +36,7 @@ import org.slf4j.Logger; | ... | @@ -36,6 +36,7 @@ import org.slf4j.Logger; |
| 36 | 36 | ||
| 37 | import java.util.ArrayList; | 37 | import java.util.ArrayList; |
| 38 | import java.util.Collection; | 38 | import java.util.Collection; |
| 39 | +import java.util.Collections; | ||
| 39 | import java.util.Iterator; | 40 | import java.util.Iterator; |
| 40 | import java.util.List; | 41 | import java.util.List; |
| 41 | import java.util.Optional; | 42 | import java.util.Optional; |
| ... | @@ -112,7 +113,8 @@ class IntentInstaller { | ... | @@ -112,7 +113,8 @@ class IntentInstaller { |
| 112 | uninstallData.setState(WITHDRAWN); | 113 | uninstallData.setState(WITHDRAWN); |
| 113 | break; | 114 | break; |
| 114 | } | 115 | } |
| 115 | - store.write(uninstallData); | 116 | + // Intent has been withdrawn; we can clear the installables |
| 117 | + store.write(new IntentData(uninstallData, Collections.emptyList())); | ||
| 116 | } | 118 | } |
| 117 | }; | 119 | }; |
| 118 | 120 | ... | ... |
-
Please register or login to post a comment