2 * Copyright (c) 2017 Intel Corporation. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.neutron.spi;
10 import org.opendaylight.controller.md.sal.common.api.data.ReadFailedException;
11 import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
12 import org.opendaylight.yangtools.yang.common.OperationFailedException;
15 * This interface defines the methods for CRUD of NB OpenStack Tap Flow objects.
17 public interface INeutronTapFlowCRUD extends INeutronCRUD<NeutronTapFlow> {
20 * Applications call this interface method to check if a NeutronTapFlow object exists.
22 * @param tapServiceUUID
26 * @return boolean on whether the object was added or not
27 * @throws ReadFailedException if the read failed
30 boolean tapFlowExists(String tapServiceUUID, String tapFlowUUID) throws ReadFailedException;
33 * Applications call this interface method to get a NeutronTapFlow object.
35 * @param tapServiceUUID
39 * @return NeutronTapFlow object
40 * @throws ReadFailedException if the read failed
42 NeutronTapFlow getTapFlow(String tapServiceUUID, String tapFlowUUID) throws ReadFailedException;
45 * Applications call this interface method to add a NeutronTapFlow object to the
49 * OpenStackNetwork object
50 * @return boolean on whether the object was added or not
51 * @throws OperationFailedException if the read or write failed
53 boolean addTapFlow(NeutronTapFlow input) throws ReadFailedException, OperationFailedException;
56 * Applications call this interface method to update a NeutronTapFlow object to the
60 * OpenStackNetwork object
61 * @throws TransactionCommitFailedException if the write failed
63 void updateTapFlow(NeutronTapFlow input) throws TransactionCommitFailedException;
66 * Applications call this interface method to delete a NeutronTapFlow object.
68 * @param tapServiceUUID
72 * @throws TransactionCommitFailedException if the write failed
74 void deleteTapFlow(String tapServiceUUID, String tapFlowUUID) throws TransactionCommitFailedException;