Commit 2bf990f8 authored by Kostis Trantzas's avatar Kostis Trantzas
Browse files

Merge branch 'develop' into 'main'

Merging "develop" to "main" branch

See merge request !29
parents be278d5d b61598af
Loading
Loading
Loading
Loading
Loading
+1 −0
Changes for .gitignore: 1 added line, 0 removed lines.
Original line number Original line Diff line number Diff line
@@ -2,3 +2,4 @@
.project
.project
.classpath
.classpath
/.settings
/.settings
/.bpmn
 No newline at end of file
+3 −3
Changes for Dockerfile: 3 added lines, 3 removed lines.
Original line number Original line Diff line number Diff line
@@ -2,7 +2,7 @@ FROM ibm-semeru-runtimes:open-17.0.7_7-jdk
MAINTAINER openslice.io
MAINTAINER openslice.io
RUN mkdir /opt/shareclasses
RUN mkdir /opt/shareclasses
RUN mkdir -p /opt/openslice/lib/
RUN mkdir -p /opt/openslice/lib/
COPY target/org.etsi.osl.osom-1.1.0.jar /opt/openslice/lib/
COPY target/org.etsi.osl.osom-1.2.0.jar /opt/openslice/lib/
COPY target/org.etsi.osl.osom-1.1.0-exec.jar /opt/openslice/lib/
COPY target/org.etsi.osl.osom-1.2.0-exec.jar /opt/openslice/lib/
COPY . /opt/openslice/lib/
COPY . /opt/openslice/lib/
CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses","-jar", "/opt/openslice/lib/org.etsi.osl.osom-1.1.0-exec.jar"]
CMD ["java", "-Xshareclasses:cacheDir=/opt/shareclasses","-jar", "/opt/openslice/lib/org.etsi.osl.osom-1.2.0-exec.jar"]
 No newline at end of file
 No newline at end of file
+1 −1
Changes for pom.xml: 1 added line, 1 removed line.
Original line number Original line Diff line number Diff line
@@ -5,7 +5,7 @@
	<parent>
	<parent>
		<groupId>org.etsi.osl</groupId>
		<groupId>org.etsi.osl</groupId>
		<artifactId>org.etsi.osl.main</artifactId>
		<artifactId>org.etsi.osl.main</artifactId>
		<version>2024Q4</version>
		<version>2025Q2</version>
		<relativePath>../org.etsi.osl.main</relativePath>
		<relativePath>../org.etsi.osl.main</relativePath>
	</parent>
	</parent>


+27 −7
Changes for src/main/java/org/etsi/osl/osom/lcm/LcmBaseExecutor.java: 27 added lines, 7 removed lines.
Original line number Original line Diff line number Diff line
package org.etsi.osl.osom.lcm;
package org.etsi.osl.osom.lcm;


import java.io.File;
import java.io.IOException;
import java.io.IOException;
import java.time.LocalDate;
import java.time.LocalTime;
import java.time.OffsetDateTime;
import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.ArrayList;
@@ -11,15 +14,20 @@ import java.util.function.Consumer;
import javax.net.ssl.SSLException;
import javax.net.ssl.SSLException;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.exc.StreamWriteException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.core.util.DefaultPrettyPrinter;
import com.fasterxml.jackson.databind.DatabindException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ObjectWriter;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.jayway.jsonpath.Configuration;
import com.jayway.jsonpath.Configuration;
import com.jayway.jsonpath.JsonPath;
import com.jayway.jsonpath.JsonPath;
import com.jayway.jsonpath.Option;
import com.jayway.jsonpath.Option;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.text.StringEscapeUtils;
import org.etsi.osl.osom.partnerservices.GenericClient;
import org.etsi.osl.osom.partnerservices.GenericClient;
import org.etsi.osl.tmf.common.model.Any;
import org.etsi.osl.tmf.common.model.Any;
import org.etsi.osl.tmf.common.model.EValueType;
import org.etsi.osl.tmf.common.model.EValueType;
@@ -126,7 +134,7 @@ public abstract class LcmBaseExecutor {


	}
	}


	private Optional<Characteristic> getCharacteristicByName(String charName) {
	protected Optional<Characteristic> getCharacteristicByName(String charName) {


		List<Characteristic> serviceCharacteristic;
		List<Characteristic> serviceCharacteristic;
		if (lcmspec.getLcmrulephase().equals("PRE_PROVISION") || this.vars.getService() == null) {
		if (lcmspec.getLcmrulephase().equals("PRE_PROVISION") || this.vars.getService() == null) {
@@ -225,20 +233,32 @@ public abstract class LcmBaseExecutor {
		return -1;
		return -1;
	}
	}



	public String getCharValAsString(String charName) {
	public String getCharValAsString(String charName) {
		logger.debug("getCharValAsString " + charName);
		Optional<Characteristic> characteristic = getCharacteristicByName(charName);
		Optional<Characteristic> c = getCharacteristicByName(charName);


		if (c.isPresent()) {
		logger.info("Getting characteristic value as a string...");
			logger.debug("getCharValAsString " + c.get().getValue().getValue());
	
			return c.get().getValue().getValue();
		if (characteristic.isPresent()) {
			return characteristic.get().getValue().getValue();
		}
	
		return null;
	}
	}


		logger.debug("getCharValAsString NULL ");

	public String escapeText(String s) {
		if (s == null || s.isEmpty()) {
			logger.debug("escapeText NULL ");
			return null;
			return null;
		}

		logger.info("Escaping string...");


		return "\"" + StringEscapeUtils.escapeJava(s) + "\"";
	}
	}
	
	

	public Boolean getCharValFromBooleanType(String charName) {
	public Boolean getCharValFromBooleanType(String charName) {
		logger.debug("getCharValFromBooleanType " + charName);
		logger.debug("getCharValFromBooleanType " + charName);
		Optional<Characteristic> c = getCharacteristicByName(charName);
		Optional<Characteristic> c = getCharacteristicByName(charName);
+15 −16
Changes for src/main/java/org/etsi/osl/osom/management/MetricoOrchestrationService.java: 15 added lines, 16 removed lines.
Original line number Original line Diff line number Diff line
@@ -81,25 +81,16 @@ public class MetricoOrchestrationService implements JavaDelegate {
			String cfs_id = String.valueOf(serviceCharacteristic.getValue().getValue());
			String cfs_id = String.valueOf(serviceCharacteristic.getValue().getValue());
			mcjFVO.setConsumingApplicationId(cfs_id);
			mcjFVO.setConsumingApplicationId(cfs_id);


			serviceCharacteristic = aService.getServiceCharacteristicByName("_MT_END_TIME");
			String endTimeString = 	String.valueOf(serviceCharacteristic.getValue().getValue());
			ScheduleDefinitionFVO scheduleDefinition = new ScheduleDefinitionFVO();
			ScheduleDefinitionFVO scheduleDefinition = new ScheduleDefinitionFVO();
			if (endTimeString != null && !endTimeString.equals("")) {
			if(aService.getStartDate() != null) {
				OffsetDateTime endTime = convertStringToOffsetDateTime(endTimeString, DateTimeFormat.ISO.DATE_TIME );
				scheduleDefinition.setScheduleDefinitionStartTime(aService.getStartDate());
				scheduleDefinition.setScheduleDefinitionEndTime(endTime);
			} else {
			} else {
				OffsetDateTime endTime = OffsetDateTime.now().plusHours(1);
				scheduleDefinition.setScheduleDefinitionStartTime(OffsetDateTime.now(ZoneOffset.UTC));
				scheduleDefinition.setScheduleDefinitionEndTime(endTime);
			}
			}

			if(aService.getEndDate() != null) {
			serviceCharacteristic = aService.getServiceCharacteristicByName("_MT_START_TIME");
				scheduleDefinition.setScheduleDefinitionEndTime(aService.getEndDate());
			String startTimeString = String.valueOf(serviceCharacteristic.getValue().getValue());
			if (startTimeString != null&& !startTimeString.equals("")) {
				OffsetDateTime startTime = convertStringToOffsetDateTime(startTimeString, DateTimeFormat.ISO.DATE_TIME );
				scheduleDefinition.setScheduleDefinitionStartTime(startTime);
			} else {
			} else {
				OffsetDateTime startTime = OffsetDateTime.now();
				scheduleDefinition.setScheduleDefinitionEndTime(OffsetDateTime.now(ZoneOffset.UTC).plusHours(1));
				scheduleDefinition.setScheduleDefinitionStartTime(startTime);
			}
			}
			List<ScheduleDefinitionFVO> scheduleDefinitions = new ArrayList<>();
			List<ScheduleDefinitionFVO> scheduleDefinitions = new ArrayList<>();
			scheduleDefinitions.add(scheduleDefinition);
			scheduleDefinitions.add(scheduleDefinition);
@@ -161,7 +152,7 @@ public class MetricoOrchestrationService implements JavaDelegate {
            su = new ServiceUpdate();// the object to update the service
            su = new ServiceUpdate();// the object to update the service
            MeasurementCollectionJob mcj = serviceOrderManager.addMeasurementCollectionJob(mcjFVO);
            MeasurementCollectionJob mcj = serviceOrderManager.addMeasurementCollectionJob(mcjFVO);
            if  (mcj != null){
            if  (mcj != null){
              logger.info("Measurement Collection Job was not created.");
              logger.info("Measurement Collection Job was created.");


              serviceCharacteristic = new Characteristic();              
              serviceCharacteristic = new Characteristic();              
              serviceCharacteristic.setName( "_MT_MCJ_REFID" );
              serviceCharacteristic.setName( "_MT_MCJ_REFID" );
@@ -172,6 +163,14 @@ public class MetricoOrchestrationService implements JavaDelegate {
              serviceCharacteristic.setValue(val);
              serviceCharacteristic.setValue(val);
              su.addServiceCharacteristicItem(serviceCharacteristic);
              su.addServiceCharacteristicItem(serviceCharacteristic);


			  MeasurementCollectionJobMVO mcjMVO = new MeasurementCollectionJobMVO();
			  mcjMVO.setExecutionState(ExecutionStateType.ACKNOWLEDGED);
			  try {
				  serviceOrderManager.updateMeasurementCollectionJobById(mcj.getUuid(), mcjMVO);
			  } catch (IOException e) {
				  throw new RuntimeException(e);
			  }

            } else {
            } else {
              logger.error("Measurement Collection Job was not created.");
              logger.error("Measurement Collection Job was not created.");
              su.setState(ServiceStateType.TERMINATED);
              su.setState(ServiceStateType.TERMINATED);
Loading