* Copyright (C) 2021 highstreet technologies GmbH
* Modifications Copyright (C) 2021-2022 Nordix Foundation
* Modifications Copyright (C) 2021 Pantheon.tech
+ * Modifications Copyright (C) 2022 Bell Canada
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
import java.util.Collection;
import org.onap.cps.ncmp.api.models.DmiPluginRegistration;
+import org.onap.cps.ncmp.api.models.DmiPluginRegistrationResponse;
+import org.onap.cps.ncmp.api.models.NcmpServiceCmHandle;
import org.onap.cps.spi.model.ModuleReference;
/*
* Registration of New CM Handles.
*
* @param dmiPluginRegistration Dmi Plugin Registration
+ * @return dmiPluginRegistrationResponse
*/
- void updateDmiRegistrationAndSyncModule(DmiPluginRegistration dmiPluginRegistration);
+ DmiPluginRegistrationResponse updateDmiRegistrationAndSyncModule(DmiPluginRegistration dmiPluginRegistration);
/**
* Get resource data for data store pass-through operational
* using dmi.
*
- * @param cmHandle cm handle
+ * @param cmHandleId cm handle identifier
* @param resourceIdentifier resource identifier
* @param acceptParamInHeader accept param
* @param optionsParamInQuery options query
+ * @param topicParamInQuery topic name for (triggering) async responses
* @return {@code Object} resource data
*/
- Object getResourceDataOperationalForCmHandle(String cmHandle,
+ Object getResourceDataOperationalForCmHandle(String cmHandleId,
String resourceIdentifier,
String acceptParamInHeader,
- String optionsParamInQuery);
+ String optionsParamInQuery,
+ String topicParamInQuery);
/**
* Get resource data for data store pass-through running
* using dmi.
*
- * @param cmHandle cm handle
+ * @param cmHandleId cm handle identifier
* @param resourceIdentifier resource identifier
* @param acceptParamInHeader accept param
* @param optionsParamInQuery options query
+ * @param topicParamInQuery topic query
* @return {@code Object} resource data
*/
- Object getResourceDataPassThroughRunningForCmHandle(String cmHandle,
+ Object getResourceDataPassThroughRunningForCmHandle(String cmHandleId,
String resourceIdentifier,
String acceptParamInHeader,
- String optionsParamInQuery);
+ String optionsParamInQuery,
+ String topicParamInQuery);
/**
* Write resource data for data store pass-through running
* using dmi for given cm-handle.
- * @param cmHandle cm handle
+ * @param cmHandleId cm handle identifier
* @param resourceIdentifier resource identifier
* @param operation required operation
* @param requestBody request body to create resource
* @param contentType content type in body
+ * @return {@code Object} return data
*/
- void writeResourceDataPassThroughRunningForCmHandle(String cmHandle,
+ Object writeResourceDataPassThroughRunningForCmHandle(String cmHandleId,
String resourceIdentifier,
OperationEnum operation,
String requestBody,
/**
* Retrieve module references for the given cm handle.
*
- * @param cmHandle cm handle
+ * @param cmHandleId cm handle identifier
* @return a collection of modules names and revisions
*/
- Collection<ModuleReference> getYangResourcesModuleReferences(String cmHandle);
+ Collection<ModuleReference> getYangResourcesModuleReferences(String cmHandleId);
/**
* Query cm handle identifiers for the given collection of module names.
*/
Collection<String> executeCmHandleHasAllModulesSearch(Collection<String> moduleNames);
+ /**
+ * Query cm handle details by cm handle's name.
+ *
+ * @param cmHandleId cm handle identifier
+ * @return a collection of cm handle details.
+ */
+ NcmpServiceCmHandle getNcmpServiceCmHandle(String cmHandleId);
+
}