+++ /dev/null
-/*
- * Copyright (c) 2013, 2017 Cisco Systems, Inc. and others. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.controller.config.api;
-
-import javax.management.InstanceNotFoundException;
-import javax.management.ObjectName;
-
-public interface ServiceReferenceWritableRegistry extends ServiceReferenceReadableRegistry {
- /**
- * Create or update reference name to objectName. Reference name is unique per
- * service interface name.
- *
- * @return created or updated object name containing service name and reference
- * name
- * @throws IllegalArgumentException
- * if there is a mismatch between serviceInterfaceName and
- * objectName
- * @throws InstanceNotFoundException
- * if search did not find exactly one instance
- */
- ObjectName saveServiceReference(String serviceInterfaceName, String refName, ObjectName moduleON)
- throws InstanceNotFoundException;
-
- /**
- * Remove service reference.
- *
- * @throws IllegalArgumentException
- * if service interface name is not advertised by any module
- */
- void removeServiceReference(String serviceInterfaceName, String refName) throws InstanceNotFoundException;
-
- /**
- * Remove all service references.
- */
- void removeAllServiceReferences();
-
- /**
- * Remove all service references attached to given module.
- *
- * @return true iif at least one reference was removed
- */
- boolean removeServiceReferences(ObjectName objectName) throws InstanceNotFoundException;
-}