Remove mutating methods in IntentData

Change-Id: I1d9ac694922f4a12b2d94a92b64be2c336c31ae3
diff --git a/core/net/src/main/java/org/onosproject/net/intent/impl/phase/Compiling.java b/core/net/src/main/java/org/onosproject/net/intent/impl/phase/Compiling.java
index 5078b5d..6cef3a4 100644
--- a/core/net/src/main/java/org/onosproject/net/intent/impl/phase/Compiling.java
+++ b/core/net/src/main/java/org/onosproject/net/intent/impl/phase/Compiling.java
@@ -57,14 +57,12 @@
             List<Intent> compiled = processor.compile(data.intent(),
                     //TODO consider passing an optional here in the future
                     stored.isPresent() ? stored.get().installables() : null);
-            data.setInstallables(compiled);
-            return Optional.of(new Installing(processor, data, stored));
+            return Optional.of(new Installing(processor, new IntentData(data, compiled), stored));
         } catch (IntentException e) {
             log.debug("Unable to compile intent {} due to: {}", data.intent(), e);
             if (stored.isPresent() && !stored.get().installables().isEmpty()) {
                 // removing orphaned flows and deallocating resources
-                data.setInstallables(stored.get().installables());
-                return Optional.of(new Withdrawing(processor, data));
+                return Optional.of(new Withdrawing(processor, new IntentData(data, stored.get().installables())));
             } else {
                 return Optional.of(new Failed(data));
             }
diff --git a/core/net/src/main/java/org/onosproject/net/intent/impl/phase/WithdrawRequest.java b/core/net/src/main/java/org/onosproject/net/intent/impl/phase/WithdrawRequest.java
index 8a0709e..a2c3dc0 100644
--- a/core/net/src/main/java/org/onosproject/net/intent/impl/phase/WithdrawRequest.java
+++ b/core/net/src/main/java/org/onosproject/net/intent/impl/phase/WithdrawRequest.java
@@ -64,7 +64,6 @@
             }
         }
 
-        data.setInstallables(stored.get().installables());
-        return Optional.of(new Withdrawing(processor, data));
+        return Optional.of(new Withdrawing(processor, new IntentData(data, stored.get().installables())));
     }
 }