diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpEvent.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpEvent.java new file mode 100644 index 0000000000..f76007f7e8 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpEvent.java @@ -0,0 +1,60 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.floatingip; + +import org.onosproject.event.AbstractEvent; +import org.onosproject.vtnrsc.FloatingIp; + +/** + * Describes network Floating IP event. + */ +public class FloatingIpEvent + extends AbstractEvent { + /** + * Type of Floating IP events. + */ + public enum Type { + /** + * Signifies that Floating IP has been created. + */ + FLOATINGIP_PUT, + /** + * Signifies that Floating IP has been deleted. + */ + FLOATINGIP_DELETE + } + + /** + * Creates an event of a given type and for the specified Floating IP. + * + * @param type Floating IP event type + * @param floagingIp Floating IP subject + */ + public FloatingIpEvent(Type type, FloatingIp floagingIp) { + super(type, floagingIp); + } + + /** + * Creates an event of a given type and for the specified Floating IP. + * + * @param type Floating IP event type + * @param floagingIp Floating IP subject + * @param time occurrence time + */ + public FloatingIpEvent(Type type, FloatingIp floagingIp, long time) { + super(type, floagingIp, time); + } +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpListener.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpListener.java new file mode 100644 index 0000000000..a42af136e2 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpListener.java @@ -0,0 +1,25 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.floatingip; + +import org.onosproject.event.EventListener; + +/** + * Entity capable of Floating IP related events. + */ +public interface FloatingIpListener extends EventListener { + +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpService.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpService.java new file mode 100644 index 0000000000..3f6f2515b7 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/FloatingIpService.java @@ -0,0 +1,108 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.floatingip; + +import java.util.Collection; + +import org.onlab.packet.IpAddress; +import org.onosproject.vtnrsc.FloatingIp; +import org.onosproject.vtnrsc.FloatingIpId; +import org.onosproject.vtnrsc.TenantId; + +/** + * Service for interacting with the inventory of floating IP. + */ +public interface FloatingIpService { + /** + * Returns exists or not of specific floatingIp identifier. + * + * @param floatingIpId floatingIp identifier + * @return true or false + */ + boolean exists(FloatingIpId floatingIpId); + + /** + * Returns is used or not of specific floating IP address. + * + * @param floatingIpAddr floatingIp address + * @param floatingIpId floatingIp identifier + * @return true or false + */ + boolean floatingIpIsUsed(IpAddress floatingIpAddr, FloatingIpId floatingIpId); + + /** + * Returns is used or not of specific fixed IP address. + * + * @param fixedIpAddr fixedIp address + * @param tenantId the tenant identifier of floating IP + * @param floatingIpId floatingIp identifier + * @return true or false + */ + boolean fixedIpIsUsed(IpAddress fixedIpAddr, TenantId tenantId, FloatingIpId floatingIpId); + + /** + * Returns a collection of the currently known floating IP. + * + * @return collection of floating IP + */ + Collection getFloatingIps(); + + /** + * Returns the floatingIp with the specified identifier. + * + * @param floatingIpId floatingIp identifier + * @return floatingIp or null if one with the given identifier is not known + */ + FloatingIp getFloatingIp(FloatingIpId floatingIpId); + + /** + * Creates new floatingIps. + * + * @param floatingIps the collection of floatingIp + * @return true if the identifier floatingIp has been created right + */ + boolean createFloatingIps(Collection floatingIps); + + /** + * Updates existing floatingIps. + * + * @param floatingIps the collection of floatingIp + * @return true if all floatingIp were updated successfully + */ + boolean updateFloatingIps(Collection floatingIps); + + /** + * Removes the specified floatingIp from the store. + * + * @param floatingIpIds the collection of floatingIp identifier + * @return true if remove identifier floatingIp successfully + */ + boolean removeFloatingIps(Collection floatingIpIds); + + /** + * Adds the specified listener to floating Ip manager. + * + * @param listener floating Ip listener + */ + void addListener(FloatingIpListener listener); + + /** + * Removes the specified listener to floating Ip manager. + * + * @param listener floating Ip listener + */ + void removeListener(FloatingIpListener listener); +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/package-info.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/package-info.java new file mode 100644 index 0000000000..274cbdd071 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/floatingip/package-info.java @@ -0,0 +1,20 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Service for interacting with the inventory of FloatingIp. + */ +package org.onosproject.vtnrsc.floatingip; diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterEvent.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterEvent.java new file mode 100644 index 0000000000..25bd7b31d5 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterEvent.java @@ -0,0 +1,59 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.router; + +import org.onosproject.event.AbstractEvent; +import org.onosproject.vtnrsc.Router; + +/** + * Describes network Router event. + */ +public class RouterEvent extends AbstractEvent { + /** + * Type of Router events. + */ + public enum Type { + /** + * Signifies that router has been created. + */ + ROUTER_PUT, + /** + * Signifies that router has been deleted. + */ + ROUTER_DELETE + } + + /** + * Creates an event of a given type and for the specified Router. + * + * @param type Router event type + * @param router Router subject + */ + public RouterEvent(Type type, Router router) { + super(type, router); + } + + /** + * Creates an event of a given type and for the specified Router. + * + * @param type Router event type + * @param router Router subject + * @param time occurrence time + */ + public RouterEvent(Type type, Router router, long time) { + super(type, router, time); + } +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterListener.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterListener.java new file mode 100644 index 0000000000..dc77298166 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterListener.java @@ -0,0 +1,25 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.router; + +import org.onosproject.event.EventListener; + +/** + * Entity capable of Router related events. + */ +public interface RouterListener extends EventListener { + +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterService.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterService.java new file mode 100644 index 0000000000..362fa02bde --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/RouterService.java @@ -0,0 +1,90 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.router; + +import java.util.Collection; + +import org.onosproject.vtnrsc.Router; +import org.onosproject.vtnrsc.RouterId; + +/** + * Service for interacting with the inventory of Routers. + */ +public interface RouterService { + /** + * Returns exists or not of specific router identifier. + * + * @param routerId router identifier + * @return true or false + */ + boolean exists(RouterId routerId); + + /** + * Returns a collection of the currently known Routers. + * + * @return collection of Routers + */ + Collection getRouters(); + + /** + * Returns the Router with the specified identifier. + * + * @param routerId Router identifier + * @return Router or null if one with the given identifier is not known + */ + Router getRouter(RouterId routerId); + + /** + * Creates new Routers. + * + * @param routers the collection of Routers + * @return true if the identifier Router has been created right. + * false if the identifier Router is failed to store + */ + boolean createRouters(Collection routers); + + /** + * Updates existing Routers. + * + * @param routers the collection of Routers + * @return true if Routers were updated successfully. + * false if Routers were updated failed + */ + boolean updateRouters(Collection routers); + + /** + * Removes the specified Routers from the store. + * + * @param routerIds the collection of Routers identifier + * @return true if remove identifier Routers successfully. false if remove + * identifier Routers failed + */ + boolean removeRouters(Collection routerIds); + + /** + * Adds the specified listener to Router manager. + * + * @param listener Router listener + */ + void addListener(RouterListener listener); + + /** + * Removes the specified listener to Router manager. + * + * @param listener Router listener + */ + void removeListener(RouterListener listener); +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/package-info.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/package-info.java new file mode 100644 index 0000000000..fb6834aa31 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/router/package-info.java @@ -0,0 +1,20 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Service for interacting with the inventory of Router. + */ +package org.onosproject.vtnrsc.router; diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceEvent.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceEvent.java new file mode 100644 index 0000000000..7f5cfa134e --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceEvent.java @@ -0,0 +1,62 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.routerinterface; + +import org.onosproject.event.AbstractEvent; +import org.onosproject.vtnrsc.RouterInterface; + +/** + * Describes network Router Interface event. + */ +public class RouterInterfaceEvent + extends AbstractEvent { + + /** + * Type of Router Interface events. + */ + public enum Type { + /** + * Signifies that router interface has been added. + */ + ROUTER_INTERFACE_PUT, + /** + * Signifies that router interface has been removed. + */ + ROUTER_INTERFACE_DELETE + } + + /** + * Creates an event of a given type and for the specified Router Interface. + * + * @param type Router Interface event type + * @param routerInterface Router Interface subject + */ + public RouterInterfaceEvent(Type type, RouterInterface routerInterface) { + super(type, routerInterface); + } + + /** + * Creates an event of a given type and for the specified Router Interface. + * + * @param type Router Interface event type. + * @param routerInterface Router Interface subject + * @param time occurrence time + */ + public RouterInterfaceEvent(Type type, RouterInterface routerInterface, + long time) { + super(type, routerInterface, time); + } +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceListener.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceListener.java new file mode 100644 index 0000000000..1d0dab6f73 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceListener.java @@ -0,0 +1,27 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onosproject.vtnrsc.routerinterface; + +import org.onosproject.event.EventListener; + +/** + * Entity capable of Router Interface related events. + */ +public interface RouterInterfaceListener + extends EventListener { + +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceService.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceService.java new file mode 100644 index 0000000000..8cf147a5a6 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/RouterInterfaceService.java @@ -0,0 +1,80 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.routerinterface; + +import java.util.Collection; + +import org.onosproject.vtnrsc.RouterInterface; +import org.onosproject.vtnrsc.SubnetId; + +/** + * Service for interacting with the inventory of Router interface. + */ +public interface RouterInterfaceService { + /** + * Returns exists or not of specific subnet identifier. + * + * @param subnetId subnet identifier + * @return true or false + */ + boolean exists(SubnetId subnetId); + + /** + * Returns a collection of the currently known Router interface. + * + * @return collection of RouterInterface + */ + Collection getRouterInterfaces(); + + /** + * Returns the Router interface with the specified subnet identifier. + * + * @param subnetId subnet identifier + * @return RouterInterface or null if one with the given identifier is not + * known + */ + RouterInterface getRouterInterface(SubnetId subnetId); + + /** + * Adds the specified RouterInterface. + * + * @param routerInterface the interface add to router + * @return true if add router interface successfully + */ + boolean addRouterInterface(RouterInterface routerInterface); + + /** + * Removes the specified RouterInterface. + * + * @param routerInterface the interface remove from router + * @return true if remove router interface successfully + */ + boolean removeRouterInterface(RouterInterface routerInterface); + + /** + * Adds the specified listener to Router Interface manager. + * + * @param listener Router Interface listener + */ + void addListener(RouterInterfaceListener listener); + + /** + * Removes the specified listener to RouterInterface manager. + * + * @param listener Router Interface listener + */ + void removeListener(RouterInterfaceListener listener); +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/package-info.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/package-info.java new file mode 100644 index 0000000000..3804089a00 --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/routerinterface/package-info.java @@ -0,0 +1,20 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Service for interacting with the inventory of RouterInterface. + */ +package org.onosproject.vtnrsc.routerinterface; diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/service/VtnRscService.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/service/VtnRscService.java new file mode 100644 index 0000000000..21161ba55a --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/service/VtnRscService.java @@ -0,0 +1,94 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.onosproject.vtnrsc.service; + +import java.util.Iterator; + +import org.onlab.packet.MacAddress; +import org.onosproject.net.Device; +import org.onosproject.net.DeviceId; +import org.onosproject.net.HostId; +import org.onosproject.vtnrsc.SegmentationId; +import org.onosproject.vtnrsc.TenantId; +import org.onosproject.vtnrsc.VirtualPortId; +import org.onosproject.vtnrsc.event.VtnRscListener; + +/** + * Service for interacting with the inventory of Vtn resource. + */ +public interface VtnRscService { + /** + * Adds the specified listener. + * + * @param listener VtnRsc listener + */ + void addListener(VtnRscListener listener); + + /** + * Removes the specified listener. + * + * @param listener VtnRsc listener + */ + void removeListener(VtnRscListener listener); + + /** + * Returns the SegmentationId of tenant. + * + * @param tenantId tenant identifier + * @return SegmentationId the SegmentationId of tenant + */ + SegmentationId getL3vni(TenantId tenantId); + + /** + * Returns Classifier Ovs list of the specific tenant. + * + * @param tenantId tenant identifier + * @return iterable collection of Device + */ + Iterator getClassifierOfTenant(TenantId tenantId); + + /** + * Returns Service function forwarders Ovs list of the specific tenant. + * + * @param tenantId tenant identifier + * @return iterable collection of Device + */ + Iterator getSFFOfTenant(TenantId tenantId); + + /** + * Returns gateway mac address of the specific host. + * + * @param hostId host identifier + * @return MacAddress of host + */ + MacAddress getGatewayMac(HostId hostId); + + /** + * Checks if a specific port is a service function. + * + * @param portId port identifier + * @return true or false + */ + boolean isServiceFunction(VirtualPortId portId); + + /** + * Returns device identifier mapping to the specific port. + * + * @param portId port identifier + * @return device identifier + */ + DeviceId getSFToSFFMaping(VirtualPortId portId); +} diff --git a/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/service/package-info.java b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/service/package-info.java new file mode 100644 index 0000000000..37af604a6d --- /dev/null +++ b/apps/vtn/vtnrsc/src/main/java/org/onosproject/vtnrsc/service/package-info.java @@ -0,0 +1,20 @@ +/* + * Copyright 2015 Open Networking Laboratory + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * Service for interacting with the inventory of Vtn resource. + */ +package org.onosproject.vtnrsc.service;