Adding @Beta to Intent API classes and interfaces
Change-Id: I02a3c1a678cb4e75b5bba9a33117a9dccb6fc0f5
diff --git a/core/api/src/main/java/org/onosproject/net/intent/ConnectivityIntent.java b/core/api/src/main/java/org/onosproject/net/intent/ConnectivityIntent.java
index d69e85b..7caee3e 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/ConnectivityIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/ConnectivityIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import org.onosproject.core.ApplicationId;
@@ -34,6 +35,7 @@
/**
* Abstraction of connectivity intent for traffic matching some criteria.
*/
+@Beta
public abstract class ConnectivityIntent extends Intent {
// TODO: other forms of intents should be considered for this family:
diff --git a/core/api/src/main/java/org/onosproject/net/intent/Constraint.java b/core/api/src/main/java/org/onosproject/net/intent/Constraint.java
index ee28f6e..03acf17 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/Constraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/Constraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.net.Link;
import org.onosproject.net.Path;
import org.onosproject.net.resource.link.LinkResourceService;
@@ -24,6 +25,7 @@
* and determining the cost of traversing that link in the context of this
* constraint.
*/
+@Beta
public interface Constraint {
// TODO: Consider separating cost vs viability.
diff --git a/core/api/src/main/java/org/onosproject/net/intent/FlowRuleIntent.java b/core/api/src/main/java/org/onosproject/net/intent/FlowRuleIntent.java
index b2c6cb8..9f879cf 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/FlowRuleIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/FlowRuleIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableList;
import org.onosproject.core.ApplicationId;
@@ -31,6 +32,7 @@
* An intent that enables to tell flow level operation.
* This instance holds a collection of flow rules that may be executed in parallel.
*/
+@Beta
public class FlowRuleIntent extends Intent {
private final Collection<FlowRule> flowRules;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/HostToHostIntent.java b/core/api/src/main/java/org/onosproject/net/intent/HostToHostIntent.java
index b72ada5..bd4219a 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/HostToHostIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/HostToHostIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableSet;
import org.onosproject.core.ApplicationId;
@@ -29,6 +30,7 @@
/**
* Abstraction of end-station to end-station bidirectional connectivity.
*/
+@Beta
public final class HostToHostIntent extends ConnectivityIntent {
private final HostId one;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/Intent.java b/core/api/src/main/java/org/onosproject/net/intent/Intent.java
index 4fac53b..077fd89 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/Intent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/Intent.java
@@ -18,6 +18,7 @@
import java.util.Collection;
import java.util.Objects;
+import com.google.common.annotations.Beta;
import org.onosproject.core.ApplicationId;
import org.onosproject.core.IdGenerator;
import org.onosproject.net.NetworkResource;
@@ -32,6 +33,7 @@
* Make sure that an Intent should be immutable when a new type is defined.
* </p>
*/
+@Beta
public abstract class Intent {
private final IntentId id;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentBatchDelegate.java b/core/api/src/main/java/org/onosproject/net/intent/IntentBatchDelegate.java
index 3833160..e4babfb 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentBatchDelegate.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentBatchDelegate.java
@@ -15,11 +15,14 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
+
import java.util.Collection;
/**
* Facade for receiving notifications from the intent batch service.
*/
+@Beta
public interface IntentBatchDelegate {
/**
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentClockService.java b/core/api/src/main/java/org/onosproject/net/intent/IntentClockService.java
index 5da7215..d0dbacf 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentClockService.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentClockService.java
@@ -15,11 +15,13 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.store.Timestamp;
/**
* Logical clock service that issues per-intent timestamps.
*/
+@Beta
public interface IntentClockService {
/**
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentCompiler.java b/core/api/src/main/java/org/onosproject/net/intent/IntentCompiler.java
index da39184..9a059be 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentCompiler.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentCompiler.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.net.resource.link.LinkResourceAllocations;
import java.util.List;
@@ -26,6 +27,7 @@
*
* @param <T> the type of intent
*/
+@Beta
public interface IntentCompiler<T extends Intent> {
/**
* Compiles the specified intent into other intents.
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentData.java b/core/api/src/main/java/org/onosproject/net/intent/IntentData.java
index c54c5bc..6ac200f 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentData.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentData.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableList;
import org.onosproject.cluster.NodeId;
@@ -33,6 +34,7 @@
* A wrapper class that contains an intents, its state, and other metadata for
* internal use.
*/
+@Beta
public class IntentData { //FIXME need to make this "immutable"
// manager should be able to mutate a local copy while processing
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentEvent.java b/core/api/src/main/java/org/onosproject/net/intent/IntentEvent.java
index 369636a..b27a507 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentEvent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentEvent.java
@@ -15,11 +15,13 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.event.AbstractEvent;
/**
* A class to represent an intent related event.
*/
+@Beta
public class IntentEvent extends AbstractEvent<IntentEvent.Type, Intent> {
public enum Type {
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentException.java b/core/api/src/main/java/org/onosproject/net/intent/IntentException.java
index d2675c7..3ac1df5 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentException.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentException.java
@@ -15,9 +15,12 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
+
/**
* Represents an intent related error.
*/
+@Beta
public class IntentException extends RuntimeException {
private static final long serialVersionUID = 1907263634145241319L;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentExtensionService.java b/core/api/src/main/java/org/onosproject/net/intent/IntentExtensionService.java
index 786b60e..d7c7c64 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentExtensionService.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentExtensionService.java
@@ -15,12 +15,15 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
+
import java.util.Map;
/**
* Service for extending the capability of intent framework by
* adding additional compilers or/and installers.
*/
+@Beta
public interface IntentExtensionService {
/**
* Registers the specified compiler for the given intent class.
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentId.java b/core/api/src/main/java/org/onosproject/net/intent/IntentId.java
index b3077c5..a88fa2f 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentId.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentId.java
@@ -15,10 +15,13 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
+
/**
* Intent identifier suitable as an external key.
* <p>This class is immutable.</p>
*/
+@Beta
public final class IntentId {
private final long value;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentListener.java b/core/api/src/main/java/org/onosproject/net/intent/IntentListener.java
index c4a8367..4858c7e 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentListener.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentListener.java
@@ -15,10 +15,12 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.event.EventListener;
/**
* Listener for {@link IntentEvent intent events}.
*/
+@Beta
public interface IntentListener extends EventListener<IntentEvent> {
}
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentOperation.java b/core/api/src/main/java/org/onosproject/net/intent/IntentOperation.java
index e2c8f91..1b51b4f 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentOperation.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentOperation.java
@@ -16,6 +16,8 @@
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
+
import java.util.Objects;
import static com.google.common.base.MoreObjects.toStringHelper;
@@ -24,6 +26,7 @@
/**
* Abstraction of an intent-related operation, e.g. add, remove, replace.
*/
+@Beta
public final class IntentOperation {
private final Type type;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentService.java b/core/api/src/main/java/org/onosproject/net/intent/IntentService.java
index d6e1185..ccc97d8 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentService.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentService.java
@@ -16,11 +16,14 @@
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
+
import java.util.List;
/**
* Service for application submitting or withdrawing their intents.
*/
+@Beta
public interface IntentService {
/**
* Submits an intent into the system.
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentState.java b/core/api/src/main/java/org/onosproject/net/intent/IntentState.java
index e36bf4c..1e5fd05 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentState.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentState.java
@@ -15,9 +15,12 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
+
/**
* Representation of the phases an intent may attain during its lifecycle.
*/
+@Beta
public enum IntentState {
/**
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java b/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java
index 0c3e649..167ba15 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.store.Store;
import java.util.List;
@@ -22,6 +23,7 @@
/**
* Manages inventory of end-station intents; not intended for direct use.
*/
+@Beta
public interface IntentStore extends Store<IntentEvent, IntentStoreDelegate> {
/**
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentStoreDelegate.java b/core/api/src/main/java/org/onosproject/net/intent/IntentStoreDelegate.java
index dcb7469..fd99881 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentStoreDelegate.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentStoreDelegate.java
@@ -15,11 +15,13 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.store.StoreDelegate;
/**
* Intent store delegate abstraction.
*/
+@Beta
public interface IntentStoreDelegate extends StoreDelegate<IntentEvent> {
/**
diff --git a/core/api/src/main/java/org/onosproject/net/intent/Key.java b/core/api/src/main/java/org/onosproject/net/intent/Key.java
index 8420188..18baafc 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/Key.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/Key.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.hash.HashFunction;
import com.google.common.hash.Hashing;
import org.onosproject.core.ApplicationId;
@@ -26,6 +27,7 @@
* Key class for Intents.
*/
// TODO maybe pull this up to utils
+@Beta
public abstract class Key {
//TODO consider making this a HashCode object (worry about performance)
diff --git a/core/api/src/main/java/org/onosproject/net/intent/LinkCollectionIntent.java b/core/api/src/main/java/org/onosproject/net/intent/LinkCollectionIntent.java
index d26099e..d7953fd 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/LinkCollectionIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/LinkCollectionIntent.java
@@ -18,6 +18,7 @@
import java.util.List;
import java.util.Set;
+import com.google.common.annotations.Beta;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.ConnectPoint;
import org.onosproject.net.Link;
@@ -31,6 +32,7 @@
* Abstraction of a connectivity intent that is implemented by a set of path
* segments.
*/
+@Beta
public final class LinkCollectionIntent extends ConnectivityIntent {
private final Set<Link> links;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/MplsIntent.java b/core/api/src/main/java/org/onosproject/net/intent/MplsIntent.java
index 1625f58..bf469db 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/MplsIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/MplsIntent.java
@@ -4,6 +4,7 @@
import java.util.List;
import java.util.Optional;
+import com.google.common.annotations.Beta;
import org.onlab.packet.MplsLabel;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.ConnectPoint;
@@ -19,6 +20,7 @@
/**
* Abstraction of MPLS label-switched connectivity.
*/
+@Beta
public final class MplsIntent extends ConnectivityIntent {
private final ConnectPoint ingressPoint;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/MplsPathIntent.java b/core/api/src/main/java/org/onosproject/net/intent/MplsPathIntent.java
index 1ea5829..3c3c45c 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/MplsPathIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/MplsPathIntent.java
@@ -3,6 +3,7 @@
import java.util.List;
import java.util.Optional;
+import com.google.common.annotations.Beta;
import org.onlab.packet.MplsLabel;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.Path;
@@ -15,7 +16,7 @@
/**
* Abstraction of explicit MPLS label-switched path.
*/
-
+@Beta
public final class MplsPathIntent extends PathIntent {
private final Optional<MplsLabel> ingressLabel;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/MultiPointToSinglePointIntent.java b/core/api/src/main/java/org/onosproject/net/intent/MultiPointToSinglePointIntent.java
index b6cf0db..ac6061c 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/MultiPointToSinglePointIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/MultiPointToSinglePointIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Sets;
@@ -33,6 +34,7 @@
/**
* Abstraction of multiple source to single destination connectivity intent.
*/
+@Beta
public final class MultiPointToSinglePointIntent extends ConnectivityIntent {
private final Set<ConnectPoint> ingressPoints;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/OpticalCircuitIntent.java b/core/api/src/main/java/org/onosproject/net/intent/OpticalCircuitIntent.java
index 503c4ca..1e515c8 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/OpticalCircuitIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/OpticalCircuitIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.ConnectPoint;
@@ -28,6 +29,7 @@
* An optical layer intent for circuits between two OduClt ports.
* No traffic selector or traffic treatment are needed.
*/
+@Beta
public class OpticalCircuitIntent extends Intent {
private final ConnectPoint src;
private final ConnectPoint dst;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/OpticalConnectivityIntent.java b/core/api/src/main/java/org/onosproject/net/intent/OpticalConnectivityIntent.java
index 9197ce6..aeb0255 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/OpticalConnectivityIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/OpticalConnectivityIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.ConnectPoint;
@@ -28,6 +29,7 @@
* An optical layer intent for connectivity between two OCh ports.
* No traffic selector or traffic treatment are needed.
*/
+@Beta
public final class OpticalConnectivityIntent extends Intent {
private final ConnectPoint src;
private final ConnectPoint dst;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/OpticalPathIntent.java b/core/api/src/main/java/org/onosproject/net/intent/OpticalPathIntent.java
index 1fee24e..5a5461c 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/OpticalPathIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/OpticalPathIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.ConnectPoint;
import org.onosproject.net.OchSignal;
@@ -26,6 +27,10 @@
import static com.google.common.base.Preconditions.checkNotNull;
+/**
+ * An optical layer intent with explicitly selected path.
+ */
+@Beta
public final class OpticalPathIntent extends Intent {
private final ConnectPoint src;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/PartitionEvent.java b/core/api/src/main/java/org/onosproject/net/intent/PartitionEvent.java
index 48623dd..c79a381 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/PartitionEvent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/PartitionEvent.java
@@ -15,12 +15,14 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.event.AbstractEvent;
/**
* Partition event.
*/
//TODO change String into a proper object type
+@Beta
public class PartitionEvent extends AbstractEvent<PartitionEvent.Type, String> {
public enum Type {
diff --git a/core/api/src/main/java/org/onosproject/net/intent/PartitionEventListener.java b/core/api/src/main/java/org/onosproject/net/intent/PartitionEventListener.java
index 73b9de9..5f1da33 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/PartitionEventListener.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/PartitionEventListener.java
@@ -15,10 +15,12 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.event.EventListener;
/**
* Entity capable of receiving device partition-related events.
*/
+@Beta
public interface PartitionEventListener extends EventListener<PartitionEvent> {
}
diff --git a/core/api/src/main/java/org/onosproject/net/intent/PartitionService.java b/core/api/src/main/java/org/onosproject/net/intent/PartitionService.java
index c636cd2..7c9d547 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/PartitionService.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/PartitionService.java
@@ -15,11 +15,13 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import org.onosproject.cluster.NodeId;
/**
* Service for interacting with the partition-to-instance assignments.
*/
+@Beta
public interface PartitionService {
/**
diff --git a/core/api/src/main/java/org/onosproject/net/intent/PathIntent.java b/core/api/src/main/java/org/onosproject/net/intent/PathIntent.java
index 2bdb4cf..dffbabf 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/PathIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/PathIntent.java
@@ -17,6 +17,7 @@
import java.util.List;
+import com.google.common.annotations.Beta;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.Link;
import org.onosproject.net.Path;
@@ -32,6 +33,7 @@
/**
* Abstraction of explicitly path specified connectivity intent.
*/
+@Beta
public class PathIntent extends ConnectivityIntent {
private final Path path;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java b/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java
index e737a5f..d3f7529 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/PointToPointIntent.java
@@ -18,6 +18,7 @@
import java.util.Collections;
import java.util.List;
+import com.google.common.annotations.Beta;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.ConnectPoint;
import org.onosproject.net.flow.TrafficSelector;
@@ -31,6 +32,7 @@
/**
* Abstraction of point-to-point connectivity.
*/
+@Beta
public final class PointToPointIntent extends ConnectivityIntent {
private final ConnectPoint ingressPoint;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/SinglePointToMultiPointIntent.java b/core/api/src/main/java/org/onosproject/net/intent/SinglePointToMultiPointIntent.java
index 56cac75..de555cf 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/SinglePointToMultiPointIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/SinglePointToMultiPointIntent.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableSet;
@@ -33,6 +34,7 @@
/**
* Abstraction of single source, multiple destination connectivity intent.
*/
+@Beta
public final class SinglePointToMultiPointIntent extends ConnectivityIntent {
private final ConnectPoint ingressPoint;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/TwoWayP2PIntent.java b/core/api/src/main/java/org/onosproject/net/intent/TwoWayP2PIntent.java
index a995758..b9f126f 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/TwoWayP2PIntent.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/TwoWayP2PIntent.java
@@ -18,6 +18,7 @@
import java.util.Collections;
import java.util.List;
+import com.google.common.annotations.Beta;
import org.onosproject.core.ApplicationId;
import org.onosproject.net.ConnectPoint;
import org.onosproject.net.flow.TrafficSelector;
@@ -30,6 +31,7 @@
/**
* Abstraction of bidirectional connectivity between two points in the network.
*/
+@Beta
public final class TwoWayP2PIntent extends ConnectivityIntent {
private final ConnectPoint one;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/AnnotationConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/AnnotationConstraint.java
index 36e6157..f5439ef 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/AnnotationConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/AnnotationConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import org.onosproject.net.Link;
import org.onosproject.net.resource.link.LinkResourceService;
@@ -26,6 +27,7 @@
/**
* Constraint that evaluates an arbitrary link annotated value is under the specified threshold.
*/
+@Beta
public class AnnotationConstraint extends BooleanConstraint {
private final String key;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/AsymmetricPathConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/AsymmetricPathConstraint.java
index df709f9..e0f8614 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/AsymmetricPathConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/AsymmetricPathConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import org.onosproject.net.Link;
import org.onosproject.net.Path;
import org.onosproject.net.intent.Constraint;
@@ -27,6 +28,7 @@
/**
* Constraint that serves as a request for asymmetric bi-directional path.
*/
+@Beta
public class AsymmetricPathConstraint implements Constraint {
@Override
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/BandwidthConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/BandwidthConstraint.java
index b4518d4..43b8e4b 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/BandwidthConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/BandwidthConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import org.onosproject.net.Link;
import org.onosproject.net.resource.link.BandwidthResource;
import org.onosproject.net.resource.link.BandwidthResourceRequest;
@@ -30,6 +31,7 @@
/**
* Constraint that evaluates links based on available bandwidths.
*/
+@Beta
public class BandwidthConstraint extends BooleanConstraint {
private final BandwidthResource bandwidth;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/BooleanConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/BooleanConstraint.java
index 02d4a42..f1d4ad9 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/BooleanConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/BooleanConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import org.onosproject.net.Link;
import org.onosproject.net.Path;
import org.onosproject.net.intent.Constraint;
@@ -24,6 +25,7 @@
* Abstract base class for various constraints that evaluate link viability
* in a yes/no fashion.
*/
+@Beta
public abstract class BooleanConstraint implements Constraint {
/**
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/LambdaConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/LambdaConstraint.java
index a73e375..9dd813b 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/LambdaConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/LambdaConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import org.onosproject.net.Link;
import org.onosproject.net.resource.link.LambdaResource;
import org.onosproject.net.resource.link.LinkResourceService;
@@ -28,6 +29,7 @@
/**
* Constraint that evaluates links based on available lambda.
*/
+@Beta
public class LambdaConstraint extends BooleanConstraint {
private final LambdaResource lambda;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/LatencyConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/LatencyConstraint.java
index 6b47e83..54eb4ea 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/LatencyConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/LatencyConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import org.onosproject.net.Link;
import org.onosproject.net.Path;
@@ -31,6 +32,7 @@
/**
* Constraint that evaluates the latency through a path.
*/
+@Beta
public class LatencyConstraint implements Constraint {
private final Duration latency;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/LinkTypeConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/LinkTypeConstraint.java
index 590715b..ffa4405 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/LinkTypeConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/LinkTypeConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import com.google.common.collect.ImmutableSet;
import org.onosproject.net.Link;
import org.onosproject.net.resource.link.LinkResourceService;
@@ -29,6 +30,7 @@
/**
* Constraint that evaluates links based on their type.
*/
+@Beta
public class LinkTypeConstraint extends BooleanConstraint {
private final Set<Link.Type> types;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/ObstacleConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/ObstacleConstraint.java
index 24ef191..cb1e6b2 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/ObstacleConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/ObstacleConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableSet;
import org.onosproject.net.DeviceId;
@@ -28,6 +29,7 @@
/**
* Constraint that evaluates elements not passed through.
*/
+@Beta
public class ObstacleConstraint extends BooleanConstraint {
private final Set<DeviceId> obstacles;
diff --git a/core/api/src/main/java/org/onosproject/net/intent/constraint/WaypointConstraint.java b/core/api/src/main/java/org/onosproject/net/intent/constraint/WaypointConstraint.java
index 579e44d..1acf6df 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/constraint/WaypointConstraint.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/constraint/WaypointConstraint.java
@@ -15,6 +15,7 @@
*/
package org.onosproject.net.intent.constraint;
+import com.google.common.annotations.Beta;
import com.google.common.base.MoreObjects;
import com.google.common.collect.ImmutableList;
import org.onosproject.net.DeviceId;
@@ -34,6 +35,7 @@
/**
* Constraint that evaluates elements passed through in order.
*/
+@Beta
public class WaypointConstraint implements Constraint {
private final List<DeviceId> waypoints;