Skip to content
Snippets Groups Projects
Commit 42b91124 authored by trantzas's avatar trantzas
Browse files

fix for #29:

- updates on created ResourceRef
parent 9dcbe8bb
No related branches found
No related tags found
2 merge requests!22MR for Release 2024Q4,!19METRICO integration
Pipeline #11047 passed
...@@ -10,10 +10,12 @@ import org.etsi.osl.tmf.common.model.service.Characteristic; ...@@ -10,10 +10,12 @@ import org.etsi.osl.tmf.common.model.service.Characteristic;
import org.etsi.osl.tmf.common.model.service.Note; import org.etsi.osl.tmf.common.model.service.Note;
import org.etsi.osl.tmf.common.model.service.ResourceRef; import org.etsi.osl.tmf.common.model.service.ResourceRef;
import org.etsi.osl.tmf.common.model.service.ServiceStateType; import org.etsi.osl.tmf.common.model.service.ServiceStateType;
import org.etsi.osl.tmf.common.model.Any;
import org.etsi.osl.tmf.pm628.model.*; import org.etsi.osl.tmf.pm628.model.*;
import org.etsi.osl.tmf.rcm634.model.ResourceSpecificationRef; import org.etsi.osl.tmf.rcm634.model.ResourceSpecificationRef;
import org.etsi.osl.tmf.ri639.model.Resource; import org.etsi.osl.tmf.ri639.model.Resource;
import org.etsi.osl.tmf.ri639.model.ResourceCreate; import org.etsi.osl.tmf.ri639.model.ResourceCreate;
import org.etsi.osl.tmf.ri639.model.ResourceStatusType;
import org.etsi.osl.tmf.scm633.model.ServiceSpecification; import org.etsi.osl.tmf.scm633.model.ServiceSpecification;
import org.etsi.osl.tmf.sim638.model.Service; import org.etsi.osl.tmf.sim638.model.Service;
import org.etsi.osl.tmf.sim638.model.ServiceUpdate; import org.etsi.osl.tmf.sim638.model.ServiceUpdate;
...@@ -145,10 +147,9 @@ public class MetricoOrchestrationService implements JavaDelegate { ...@@ -145,10 +147,9 @@ public class MetricoOrchestrationService implements JavaDelegate {
MeasurementCollectionJob mcj = addMeasurementCollectionJob(mcjFVO); MeasurementCollectionJob mcj = addMeasurementCollectionJob(mcjFVO);
if (mcj != null){ if (mcj != null){
publishEventMeasurementCollectionJobCreated( mcj.getUuid() );
ResourceSpecificationRef resourceSpecificationRef = spec.getResourceSpecification().stream().findFirst().get(); ResourceSpecificationRef resourceSpecificationRef = spec.getResourceSpecification().stream().findFirst().get();
Resource resourceMT = createRelatedResource( resourceSpecificationRef, sorder, aService ); Resource resourceMT = createRelatedResource( resourceSpecificationRef, sorder, aService, mcj );
ResourceRef resourceRef = new ResourceRef(); ResourceRef resourceRef = new ResourceRef();
resourceRef.setId( resourceMT.getId() ); resourceRef.setId( resourceMT.getId() );
...@@ -163,6 +164,8 @@ public class MetricoOrchestrationService implements JavaDelegate { ...@@ -163,6 +164,8 @@ public class MetricoOrchestrationService implements JavaDelegate {
su.addNoteItem(successNoteItem); su.addNoteItem(successNoteItem);
Service supd = serviceOrderManager.updateService(aService.getId(), su, false); Service supd = serviceOrderManager.updateService(aService.getId(), su, false);
publishEventMeasurementCollectionJobCreated( mcj.getUuid() );
} else { } else {
logger.error("Measurement Collection Job was not created."); logger.error("Measurement Collection Job was not created.");
} }
...@@ -253,28 +256,40 @@ public class MetricoOrchestrationService implements JavaDelegate { ...@@ -253,28 +256,40 @@ public class MetricoOrchestrationService implements JavaDelegate {
/** /**
* *
* THe resource has a temporary name. * The resource maps the created MCJ
* later on the name and its characteristics are updated via cridge
* @param rSpecRef * @param rSpecRef
* @param sOrder * @param sOrder
* @param aService * @param aService
* @return * @return
*/ */
private Resource createRelatedResource(ResourceSpecificationRef rSpecRef, ServiceOrder sOrder, Service aService) { private Resource createRelatedResource(ResourceSpecificationRef rSpecRef, ServiceOrder sOrder, Service aService, MeasurementCollectionJob mcj) {
ResourceCreate resCreate = new ResourceCreate(); ResourceCreate resCreate = new ResourceCreate();
resCreate.setName( "_cr_tmpname_service_" + aService.getId() ); resCreate.setName( rSpecRef.getName() + "-" + aService.getId() );
resCreate.setStartOperatingDate( aService.getStartDate() ); resCreate.setStartOperatingDate( aService.getStartDate() );
resCreate.setEndOperatingDate(aService.getEndDate()); resCreate.setEndOperatingDate(aService.getEndDate());
resCreate.setResourceStatus (ResourceStatusType.RESERVED);
ResourceSpecificationRef rSpecRefObj = new ResourceSpecificationRef() ; ResourceSpecificationRef rSpecRefObj = new ResourceSpecificationRef() ;
rSpecRefObj.id(rSpecRef.getId()) rSpecRefObj.id(rSpecRef.getId())
.name( rSpecRef.getName()) .name( rSpecRef.getName())
.setType(rSpecRef.getType()); .setType(rSpecRef.getType());
resCreate.setResourceSpecification(rSpecRefObj); resCreate.setResourceSpecification(rSpecRefObj);
return serviceOrderManager.createResource( resCreate, sOrder, rSpecRef.getId() );
org.etsi.osl.tmf.ri639.model.Characteristic resCharacteristicItem = new org.etsi.osl.tmf.ri639.model.Characteristic();
resCharacteristicItem.setName( "_MT_MCJ_REF" );
resCharacteristicItem.setValueType( "TEXT" );
Any val = new Any();
val.setValue( mcj.getUuid() );
val.setAlias( mcj.getUuid() );
resCharacteristicItem.setValue( val );
resCreate.addResourceCharacteristicItem( resCharacteristicItem );
// 1) need to copy the characteristics of the Resource Specification (use this instead of @param rSpecRef) and populate them with value from the aService (see GCOrchestrationService)
// 2) also need to populate the characteristic _MT_MCJ_REF with the UUID of the created MCJ / pass it as @param mcj
return serviceOrderManager.createResource( resCreate, sOrder, rSpecRef.getId() );
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment