2 * Copyright (c) 2015 Cisco Systems, Inc. and others. 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
9 package org.opendaylight.openflowplugin.api.openflow.rpc.listener;
11 import org.opendaylight.yangtools.yang.binding.DataObject;
12 import org.opendaylight.yangtools.yang.binding.Identifiable;
13 import org.opendaylight.yangtools.yang.binding.Identifier;
14 import org.opendaylight.yangtools.yang.binding.KeyedInstanceIdentifier;
17 * Flow/group/meter lifecycle listener - aimed on rpc result approved by barrier message.
19 public interface ItemLifecycleListener {
22 * react upon item added event.
24 * @param itemPath keyed path in DS
25 * @param itemBody item body
28 <I extends Identifiable<K> & DataObject, K extends Identifier<I>> void onAdded(
29 KeyedInstanceIdentifier<I, K> itemPath, I itemBody);
32 * react upon item removed event.
34 * @param itemPath keyed path in DS
36 <I extends Identifiable<K> & DataObject, K extends Identifier<I>> void onRemoved(
37 KeyedInstanceIdentifier<I, K> itemPath);
40 * react upon item updated event.
42 * @param itemPath keyed path in DS
43 * @param itemBody item body
46 <I extends Identifiable<K> & DataObject, K extends Identifier<I>> void onUpdated(
47 KeyedInstanceIdentifier<I, K> itemPath, I itemBody);