Allow to specify time when creates a mapping event instance
Change-Id: Id4d9583a8d43d8a6e0913393d35a222b9688b0d2
diff --git a/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMapping.java b/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMapping.java
index a6836f8..42415ff 100644
--- a/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMapping.java
+++ b/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMapping.java
@@ -122,6 +122,18 @@
.toString();
}
+ /**
+ * Returns a default mapping builder.
+ *
+ * @return builder
+ */
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ /**
+ * Default mapping builder.
+ */
public static final class Builder implements Mapping.Builder {
private MappingId id;
diff --git a/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMappingEntry.java b/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMappingEntry.java
index cbdce56..626cee2 100644
--- a/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMappingEntry.java
+++ b/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/DefaultMappingEntry.java
@@ -40,6 +40,15 @@
this.state = state;
}
+ /**
+ * Creates a mapping entry specified with the mapping.
+ *
+ * @param mapping mapping
+ */
+ public DefaultMappingEntry(Mapping mapping) {
+ this(mapping, MappingEntryState.PENDING_ADD);
+ }
+
@Override
public MappingEntryState state() {
return state;
diff --git a/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/MappingEvent.java b/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/MappingEvent.java
index 4b03d13..8d23085 100644
--- a/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/MappingEvent.java
+++ b/apps/mappingmanagement/api/src/main/java/org/onosproject/mapping/MappingEvent.java
@@ -22,6 +22,9 @@
*/
public class MappingEvent extends AbstractEvent<MappingEvent.Type, Mapping> {
+ /**
+ * Type of mapping events.
+ */
public enum Type {
/**
@@ -54,10 +57,28 @@
/**
* Signifies that a request to remove flow rule has been added to the store.
*/
- MAPPING_REMOVE_REQUESTED,
+ MAPPING_REMOVE_REQUESTED
}
+ /**
+ * Creates an event of a given type and for the specified mapping and the
+ * current time.
+ *
+ * @param type mapping event type
+ * @param mapping event mapping subject
+ */
public MappingEvent(Type type, Mapping mapping) {
super(type, mapping);
}
+
+ /**
+ * Creates an event of a given type and for the specified mapping and time.
+ *
+ * @param type mapping event type
+ * @param mapping event mapping subject
+ * @param time occurrence time
+ */
+ public MappingEvent(Type type, Mapping mapping, long time) {
+ super(type, mapping, time);
+ }
}