DB Upgrade code re-factoring 22/82722/1
authorJerry Flood <jflood@att.com>
Tue, 19 Mar 2019 20:43:06 +0000 (16:43 -0400)
committerJerry Flood <jflood@att.com>
Tue, 19 Mar 2019 20:43:34 +0000 (16:43 -0400)
Changed DB generated keys to UUID

Issue-ID: OPTFRA-459
Change-Id: Ic9314e580478c1db76c4c39e88c577908b2f0f0e
Signed-off-by: Jerry Flood <jflood@att.com>
39 files changed:
cmso-service/src/main/java/org/onap/optf/cmso/dispatcher/CmJob.java
cmso-service/src/main/java/org/onap/optf/cmso/dispatcher/DispatchJob.java
cmso-service/src/main/java/org/onap/optf/cmso/dispatcher/rs/DispacherService.java
cmso-service/src/main/java/org/onap/optf/cmso/dispatcher/rs/DispatcherServiceImpl.java
cmso-service/src/main/java/org/onap/optf/cmso/eventq/CMSQueueJob.java
cmso-service/src/main/java/org/onap/optf/cmso/eventq/DispatchedEventList.java
cmso-service/src/main/java/org/onap/optf/cmso/model/ApprovalType.java
cmso-service/src/main/java/org/onap/optf/cmso/model/ChangeManagementChangeWindow.java
cmso-service/src/main/java/org/onap/optf/cmso/model/ChangeManagementDetail.java
cmso-service/src/main/java/org/onap/optf/cmso/model/ChangeManagementGroup.java
cmso-service/src/main/java/org/onap/optf/cmso/model/ChangeManagementSchedule.java
cmso-service/src/main/java/org/onap/optf/cmso/model/DomainData.java
cmso-service/src/main/java/org/onap/optf/cmso/model/HelloWorld.java [deleted file]
cmso-service/src/main/java/org/onap/optf/cmso/model/Schedule.java
cmso-service/src/main/java/org/onap/optf/cmso/model/ScheduleApproval.java
cmso-service/src/main/java/org/onap/optf/cmso/model/ScheduleEvent.java [deleted file]
cmso-service/src/main/java/org/onap/optf/cmso/model/ScheduleQuery.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ApprovalTypeDAO.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ChangeManagementChangeWindowDAO.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ChangeManagementDetailDAOImpl.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ChangeManagementGroupDAO.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ChangeManagementScheduleDAO.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/DomainDataDAO.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ScheduleApprovalDAO.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ScheduleDAO.java
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ScheduleEventDAO.java [deleted file]
cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ScheduleQueryDAOImpl.java
cmso-service/src/main/java/org/onap/optf/cmso/optimizer/CMSOptimizerClient.java
cmso-service/src/main/java/org/onap/optf/cmso/optimizer/OptimizerQuartzJob.java
cmso-service/src/main/java/org/onap/optf/cmso/service/rs/BaseSchedulerServiceImpl.java
cmso-service/src/main/java/org/onap/optf/cmso/service/rs/CMSOOptimizedScheduleService.java [moved from cmso-service/src/main/java/org/onap/optf/cmso/service/rs/models/v2/CMSOOptimizedScheduleService.java with 100% similarity]
cmso-service/src/main/java/org/onap/optf/cmso/service/rs/CMSOOptimizedScheduleServiceImpl.java [moved from cmso-service/src/main/java/org/onap/optf/cmso/service/rs/models/v2/CMSOOptimizedScheduleServiceImpl.java with 100% similarity]
cmso-service/src/main/java/org/onap/optf/cmso/service/rs/CMSOOptimizerCallbackImpl.java
cmso-service/src/main/java/org/onap/optf/cmso/service/rs/CMSOServiceImpl.java
cmso-service/src/main/java/org/onap/optf/cmso/service/rs/CmQueryParameters.java
cmso-service/src/main/java/org/onap/optf/cmso/sostatus/MsoStatusClient.java
cmso-service/src/main/java/org/onap/optf/cmso/sostatus/MsoStatusJob.java
cmso-service/src/main/java/org/onap/optf/cmso/sostatus/ScheduleStatusJob.java
cmso-service/src/main/java/org/onap/optf/cmso/ticketmgt/TmStatusClient.java

index 880566a..f29d6c6 100644 (file)
@@ -32,6 +32,7 @@
 package org.onap.optf.cmso.dispatcher;\r
 \r
 import java.util.Map;\r
+import java.util.UUID;\r
 \r
 import javax.ws.rs.client.Client;\r
 import javax.ws.rs.client.ClientBuilder;\r
@@ -103,19 +104,19 @@ public class CmJob implements Job {
     public void execute(JobExecutionContext context) throws JobExecutionException {\r
         Mdc.quartzJobBegin(context);\r
         debug.debug(LogMessages.CM_JOB, "Entered");\r
-        Integer id = context.getJobDetail().getJobDataMap().getInt("key");\r
+        String id = context.getJobDetail().getJobDataMap().getString("key");\r
         try {\r
             // Hand this off to a transactional service\r
             loopback(id);\r
         } catch (Exception e) {\r
             log.warn("Unexpected exception", e);\r
         } finally {\r
-            dispatchedEventList.remove(id);\r
+            dispatchedEventList.remove(UUID.fromString(id));\r
         }\r
         debug.debug(LogMessages.CM_JOB, "Exited");\r
     }\r
 \r
-    public void loopback(Integer id) {\r
+    public void loopback(String id) {\r
         Map<String, String> mdcSave = Mdc.save();\r
         try {\r
             String url = env.getProperty("cmso.dispatch.url", "http://localhost:8089");\r
index cb8597f..60d8bdb 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -35,6 +35,8 @@ import java.net.InetAddress;
 import java.util.Date;\r
 import java.util.HashSet;\r
 import java.util.Set;\r
+import java.util.UUID;\r
+\r
 import org.onap.optf.cmso.common.CMSStatusEnum;\r
 import org.onap.optf.cmso.common.LogMessages;\r
 import org.onap.optf.cmso.model.ChangeManagementGroup;\r
@@ -52,6 +54,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;\r
 import org.springframework.stereotype.Component;\r
 import org.springframework.transaction.annotation.Transactional;\r
+\r
 import com.att.eelf.configuration.EELFLogger;\r
 import com.att.eelf.configuration.EELFManager;\r
 import com.att.eelf.i18n.EELFResourceManager;\r
@@ -86,15 +89,15 @@ public class DispatchJob {
     @Autowired\r
     Environment env;\r
 \r
-    public void execute(Integer id) throws JobExecutionException {\r
+    public void execute(UUID id) throws JobExecutionException {\r
         debug.debug(LogMessages.CM_JOB, "Entered");\r
         try {\r
             // No other instance can read this cmso until we are done.\r
             ChangeManagementSchedule cmSchedule = cmScheduleDAO.lockOne(id);\r
             cmSchedule.setDispatcherInstance(InetAddress.getLocalHost().getHostAddress());\r
-            ChangeManagementGroup group = cmGroupDAO.findById(cmSchedule.getChangeManagementGroupsId()).orElse(null);\r
+            ChangeManagementGroup group = cmGroupDAO.findById(cmSchedule.getChangeManagementGroupUuid()).orElse(null);\r
             if (group != null) {\r
-                Schedule schedule = scheduleDAO.findById(group.getSchedulesId()).orElse(null);\r
+                Schedule schedule = scheduleDAO.findById(group.getSchedulesUuid()).orElse(null);\r
                 if (schedule != null) {\r
                     schedule.setStatus(CMSStatusEnum.NotificationsInitiated.toString());\r
                     if (safeToDispatch(cmSchedule, schedule))\r
index adc3260..3c53759 100644 (file)
@@ -59,7 +59,7 @@ public interface DispacherService {
     @ApiOperation(value = "", notes = "Does dispsatch of provided cm schedule id.", response = Integer.class)\r
     @ApiResponses(\r
             value = {@ApiResponse(code = 200, message = "OK"), @ApiResponse(code = 400, message = "Request failed")})\r
-    public Response dispatchSchedule(@ApiParam(value = "Identifier", allowMultiple = false) @PathParam("id") Integer id,\r
+    public Response dispatchSchedule(@ApiParam(value = "Identifier", allowMultiple = false) @PathParam("id") String id,\r
             @Context UriInfo uri, @Context HttpServletRequest request);\r
 \r
     // ******************************************************************\r
@@ -70,7 +70,7 @@ public interface DispacherService {
     @ApiResponses(\r
             value = {@ApiResponse(code = 200, message = "OK"), @ApiResponse(code = 400, message = "Request failed")})\r
     public Response dispatchOptimizer(\r
-            @ApiParam(value = "Identifier", allowMultiple = false) @PathParam("id") Integer id, @Context UriInfo uri,\r
+            @ApiParam(value = "Identifier", allowMultiple = false) @PathParam("id") String id, @Context UriInfo uri,\r
             @Context HttpServletRequest request);\r
 \r
     // ******************************************************************\r
@@ -81,7 +81,7 @@ public interface DispacherService {
     @ApiResponses(\r
             value = {@ApiResponse(code = 200, message = "OK"), @ApiResponse(code = 400, message = "Request failed")})\r
     public Response dispatchScheduleStatus(\r
-            @ApiParam(value = "Identifier", allowMultiple = false) @PathParam("id") Integer id, @Context UriInfo uri,\r
+            @ApiParam(value = "Identifier", allowMultiple = false) @PathParam("id") String id, @Context UriInfo uri,\r
             @Context HttpServletRequest request);\r
 \r
     // ******************************************************************\r
@@ -91,7 +91,7 @@ public interface DispacherService {
     @ApiOperation(value = "", notes = "Does dispsatch of provided cm schedule id.", response = Integer.class)\r
     @ApiResponses(\r
             value = {@ApiResponse(code = 200, message = "OK"), @ApiResponse(code = 400, message = "Request failed")})\r
-    public Response dispatchSoStatus(@ApiParam(value = "Identifier", allowMultiple = true) @PathParam("id") Integer id,\r
+    public Response dispatchSoStatus(@ApiParam(value = "Identifier", allowMultiple = true) @PathParam("id") String id,\r
             @Context UriInfo uri, @Context HttpServletRequest request);\r
 \r
 }\r
index 67a69cb..feea350 100644 (file)
@@ -31,6 +31,8 @@
 \r
 package org.onap.optf.cmso.dispatcher.rs;\r
 \r
+import java.util.UUID;\r
+\r
 import javax.servlet.http.HttpServletRequest;\r
 import javax.ws.rs.core.Response;\r
 import javax.ws.rs.core.UriInfo;\r
@@ -68,10 +70,11 @@ public class DispatcherServiceImpl implements DispacherService {
 \r
     @Override\r
     @Transactional\r
-    public Response dispatchSchedule(Integer id, UriInfo uri, HttpServletRequest request) {\r
+    public Response dispatchSchedule(String id, UriInfo uri, HttpServletRequest request) {\r
         debug.debug("dispatchSchedule entered  {}" , id);\r
         try {\r
-            dispatchJob.execute(id);\r
+               UUID uuid = UUID.fromString(id);\r
+            dispatchJob.execute(uuid);\r
         } catch (Exception e) {\r
             errors.error(LogMessages.UNEXPECTED_EXCEPTION, e.getMessage());\r
             debug.error(e.getMessage(), e);\r
@@ -82,10 +85,11 @@ public class DispatcherServiceImpl implements DispacherService {
 \r
     @Override\r
     @Transactional\r
-    public Response dispatchOptimizer(Integer id, UriInfo uri, HttpServletRequest request) {\r
+    public Response dispatchOptimizer(String id, UriInfo uri, HttpServletRequest request) {\r
         debug.debug("dispatchOptimizer entered {}", id);\r
         try {\r
-            optimizerClient.scheduleOptimization(id);\r
+               UUID uuid = UUID.fromString(id);\r
+            optimizerClient.scheduleOptimization(uuid);\r
         } catch (Exception e) {\r
             errors.error(LogMessages.UNEXPECTED_EXCEPTION, e.getMessage());\r
             debug.error(e.getMessage(), e);\r
@@ -97,7 +101,7 @@ public class DispatcherServiceImpl implements DispacherService {
 \r
     @Override\r
     @Transactional\r
-    public Response dispatchScheduleStatus(Integer id, UriInfo uri, HttpServletRequest request) {\r
+    public Response dispatchScheduleStatus(String id, UriInfo uri, HttpServletRequest request) {\r
         debug.debug("dispatchScheduleStatus entered {}", id);\r
         try {\r
             tmStatusClient.checkStatus(id);\r
@@ -111,7 +115,7 @@ public class DispatcherServiceImpl implements DispacherService {
 \r
     @Override\r
     @Transactional\r
-    public Response dispatchSoStatus(Integer id, UriInfo uri, HttpServletRequest request) {\r
+    public Response dispatchSoStatus(String id, UriInfo uri, HttpServletRequest request) {\r
         debug.debug("dispatchSoStatus entered {}", id);\r
         try {\r
             msoStatusClient.execute(id);\r
index 59df59f..0987f8b 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -87,9 +87,9 @@ public class CMSQueueJob {
             return false;\r
         for (ChangeManagementSchedule schedule : schedules) {\r
             try {\r
-                if (!dispatchedEventList.isAlreadyDispatched(schedule.getId())) {\r
+                if (!dispatchedEventList.isAlreadyDispatched(schedule.getUuid())) {\r
                     scheduleCmJob(schedule);\r
-                    dispatchedEventList.addToDispathcedEventList(schedule.getId());\r
+                    dispatchedEventList.addToDispathcedEventList(schedule.getUuid());\r
                 }\r
             } catch (org.quartz.SchedulerException e) {\r
                 debug.debug(LogMessages.UNEXPECTED_EXCEPTION, e, e.getMessage());\r
@@ -118,7 +118,7 @@ public class CMSQueueJob {
             dispatchTime = startTime - dispatherLeadTime;\r
 \r
         JobDetail jobDetail = JobBuilder.newJob(CmJob.class).build();\r
-        jobDetail.getJobDataMap().put("key", schedule.getId());\r
+        jobDetail.getJobDataMap().put("key", schedule.getUuid().toString());\r
 \r
         TriggerBuilder<Trigger> tb = TriggerBuilder.newTrigger().forJob(jobDetail);\r
 \r
index 0c346d3..3e02cd1 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -33,6 +33,8 @@ package org.onap.optf.cmso.eventq;
 \r
 import java.util.HashSet;\r
 import java.util.Set;\r
+import java.util.UUID;\r
+\r
 import org.springframework.stereotype.Component;\r
 \r
 /**\r
@@ -45,18 +47,18 @@ import org.springframework.stereotype.Component;
 @Component\r
 public class DispatchedEventList {\r
 \r
-    private Set<Integer> list = new HashSet<>();\r
+    private Set<UUID> list = new HashSet<>();\r
 \r
-    public synchronized void addToDispathcedEventList(Integer id) {\r
+    public synchronized void addToDispathcedEventList(UUID id) {\r
         list.add(id);\r
     }\r
 \r
-    public synchronized void remove(Integer id) {\r
+    public synchronized void remove(UUID id) {\r
         list.remove(id);\r
     }\r
 \r
-    public synchronized boolean isAlreadyDispatched(Integer id) {\r
-        return list.contains(id);\r
+    public synchronized boolean isAlreadyDispatched(UUID uuid) {\r
+        return list.contains(uuid);\r
     }\r
 \r
 }\r
index 121774b..6009040 100644 (file)
 package org.onap.optf.cmso.model;\r
 \r
 import java.io.Serializable;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.NamedQuery;\r
 import javax.persistence.Table;\r
@@ -51,8 +51,7 @@ public class ApprovalType implements Serializable {
     private static final long serialVersionUID = 1L;\r
 \r
     @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-    private Integer id;\r
+    private UUID uuid;\r
 \r
     @Column(name = "approval_count")\r
     private Integer approvalCount;\r
@@ -66,15 +65,18 @@ public class ApprovalType implements Serializable {
 \r
     public ApprovalType() {}\r
 \r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
 \r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
+    public UUID getUuid() {\r
+               return uuid;\r
+       }\r
+\r
+\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
 \r
-    public Integer getApprovalCount() {\r
+       public Integer getApprovalCount() {\r
         return this.approvalCount;\r
     }\r
 \r
index 7224508..210e61a 100644 (file)
 package org.onap.optf.cmso.model;\r
 \r
 import java.io.Serializable;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.NamedQuery;\r
 import javax.persistence.Table;\r
 import javax.persistence.Transient;\r
+\r
 import org.joda.time.format.ISODateTimeFormat;\r
+\r
 import com.fasterxml.jackson.annotation.JsonIgnore;\r
 import com.fasterxml.jackson.annotation.JsonProperty;\r
+\r
 import io.swagger.annotations.ApiModel;\r
 import io.swagger.annotations.ApiModelProperty;\r
 \r
@@ -59,8 +62,7 @@ public class ChangeManagementChangeWindow implements Serializable {
 \r
     @JsonIgnore\r
     @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-    private Integer id;\r
+    private UUID uuid;\r
 \r
     @JsonIgnore\r
     @Column(name = "finish_time")\r
@@ -81,18 +83,11 @@ public class ChangeManagementChangeWindow implements Serializable {
     private String startTime;\r
 \r
     @JsonIgnore\r
-    @Column(name = "change_management_groups_id")\r
-    private Integer changeManagementGroupsId;\r
+    @Column(name = "change_management_group_uuid")\r
+    private UUID changeManagementGroupUuid;\r
 \r
     public ChangeManagementChangeWindow() {}\r
 \r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
-\r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
 \r
     public String getFinishTime() {\r
         if (finishTimeMillis != null)\r
@@ -110,15 +105,29 @@ public class ChangeManagementChangeWindow implements Serializable {
 \r
     public void setStartTime(String startTime) {}\r
 \r
-    public Integer getChangeManagementGroupsId() {\r
-        return changeManagementGroupsId;\r
-    }\r
 \r
-    public void setChangeManagementGroupsId(Integer changeManagementGroupsId) {\r
-        this.changeManagementGroupsId = changeManagementGroupsId;\r
-    }\r
+    public UUID getUuid() {\r
+               return uuid;\r
+       }\r
+\r
+\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
+\r
+\r
+       public UUID getChangeManagementGroupUuid() {\r
+               return changeManagementGroupUuid;\r
+       }\r
+\r
+\r
+       public void setChangeManagementGroupUuid(UUID changeManagementGroupUuid) {\r
+               this.changeManagementGroupUuid = changeManagementGroupUuid;\r
+       }\r
+\r
 \r
-    public Long getFinishTimeMillis() {\r
+       public Long getFinishTimeMillis() {\r
         return finishTimeMillis;\r
     }\r
 \r
index 31c4a2b..4f0e804 100644 (file)
 \r
 package org.onap.optf.cmso.model;\r
 \r
+import java.util.UUID;\r
+\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.Lob;\r
 import javax.persistence.Transient;\r
+\r
 import org.joda.time.format.ISODateTimeFormat;\r
+\r
 import com.fasterxml.jackson.annotation.JsonIgnore;\r
 import com.fasterxml.jackson.annotation.JsonProperty;\r
+\r
 import io.swagger.annotations.ApiModel;\r
 import io.swagger.annotations.ApiModelProperty;\r
 \r
@@ -59,8 +62,7 @@ import io.swagger.annotations.ApiModelProperty;
 public class ChangeManagementDetail {\r
     @Id\r
     @JsonIgnore\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-    private Integer id;\r
+    private UUID uuid;\r
 \r
     @ApiModelProperty(value = "Name of the VNF.")\r
     @Column(name = "vnf_name")\r
@@ -168,7 +170,8 @@ public class ChangeManagementDetail {
     private String msoTime;\r
 \r
     @JsonIgnore\r
-    private Integer schedules_id;\r
+    @Column(name = "schedules_uuid")\r
+    private UUID schedulesUuid;\r
 \r
     public String getVnfName() {\r
         return vnfName;\r
@@ -242,15 +245,27 @@ public class ChangeManagementDetail {
         this.policyId = policyId;\r
     }\r
 \r
-    public Integer getSchedulesId() {\r
-        return schedules_id;\r
-    }\r
 \r
-    public void setSchedulesId(Integer schedules_id) {\r
-        this.schedules_id = schedules_id;\r
-    }\r
+    public UUID getUuid() {\r
+               return uuid;\r
+       }\r
+\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
+\r
+\r
+\r
+       public UUID getSchedulesUuid() {\r
+               return schedulesUuid;\r
+       }\r
+\r
+       public void setSchedulesUuid(UUID schedulesUuid) {\r
+               this.schedulesUuid = schedulesUuid;\r
+       }\r
 \r
-    public Long getStartTimeMillis() {\r
+       public Long getStartTimeMillis() {\r
         return startTimeMillis;\r
     }\r
 \r
index 6aeb325..39efb3f 100644 (file)
@@ -33,17 +33,20 @@ package org.onap.optf.cmso.model;
 \r
 import java.io.Serializable;\r
 import java.util.List;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.NamedQuery;\r
 import javax.persistence.Table;\r
 import javax.persistence.Transient;\r
+\r
 import org.joda.time.format.ISODateTimeFormat;\r
+\r
 import com.fasterxml.jackson.annotation.JsonIgnore;\r
 import com.fasterxml.jackson.annotation.JsonProperty;\r
+\r
 import io.swagger.annotations.ApiModel;\r
 import io.swagger.annotations.ApiModelProperty;\r
 \r
@@ -60,8 +63,7 @@ public class ChangeManagementGroup implements Serializable {
 \r
     @JsonIgnore\r
     @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-    private Integer id;\r
+    private UUID uuid;\r
 \r
     @JsonIgnore\r
     @Column(name = "finish_time")\r
@@ -95,8 +97,8 @@ public class ChangeManagementGroup implements Serializable {
     private String startTime;\r
 \r
     @JsonIgnore\r
-    @Column(name = "schedules_id")\r
-    private Integer schedulesId;\r
+    @Column(name = "schedules_uuid")\r
+    private UUID schedulesUuid;\r
 \r
     @Column(name = "additional_duration_in_secs")\r
     @ApiModelProperty(value = "Time added to the workflow interval to allow for rollback in case of failure.")\r
@@ -122,13 +124,6 @@ public class ChangeManagementGroup implements Serializable {
 \r
     public ChangeManagementGroup() {}\r
 \r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
-\r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
 \r
     public String getFinishTime() {\r
         if (finishTimeMillis != null)\r
@@ -162,13 +157,6 @@ public class ChangeManagementGroup implements Serializable {
 \r
     public void setStartTime(String startTime) {}\r
 \r
-    public Integer getSchedulesId() {\r
-        return schedulesId;\r
-    }\r
-\r
-    public void setSchedulesId(Integer schedulesId) {\r
-        this.schedulesId = schedulesId;\r
-    }\r
 \r
     public Integer getAdditionalDurationInSecs() {\r
         return additionalDurationInSecs;\r
@@ -234,4 +222,24 @@ public class ChangeManagementGroup implements Serializable {
         this.changeManagementSchedules = changeManagementSchedules;\r
     }\r
 \r
+\r
+       public UUID getUuid() {\r
+               return uuid;\r
+       }\r
+\r
+\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
+\r
+       public UUID getSchedulesUuid() {\r
+               return schedulesUuid;\r
+       }\r
+\r
+\r
+       public void setSchedulesUuid(UUID schedulesUuid) {\r
+               this.schedulesUuid = schedulesUuid;\r
+       }\r
+\r
 }\r
index 9690290..680fc99 100644 (file)
 package org.onap.optf.cmso.model;\r
 \r
 import java.io.Serializable;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.Lob;\r
 import javax.persistence.NamedQuery;\r
 import javax.persistence.Table;\r
 import javax.persistence.Transient;\r
+\r
 import org.joda.time.format.ISODateTimeFormat;\r
+\r
 import com.fasterxml.jackson.annotation.JsonIgnore;\r
 import com.fasterxml.jackson.annotation.JsonProperty;\r
+\r
 import io.swagger.annotations.ApiModel;\r
 import io.swagger.annotations.ApiModelProperty;\r
 \r
@@ -61,8 +64,7 @@ public class ChangeManagementSchedule implements Serializable {
 \r
     @JsonIgnore\r
     @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-    private Integer id;\r
+    private UUID uuid;\r
 \r
     @ApiModelProperty(value = "TM Change Id")\r
     @Column(name = "tm_change_id")\r
@@ -107,9 +109,9 @@ public class ChangeManagementSchedule implements Serializable {
     @Column(name = "vnf_name")\r
     private String vnfName;\r
 \r
-    @Column(name = "change_management_groups_id")\r
+    @Column(name = "change_management_group_uuid")\r
     @JsonIgnore\r
-    private Integer changeManagementGroupsId;\r
+    private UUID changeManagementGroupUuid;\r
 \r
     @JsonIgnore\r
     @Column(name = "dispatch_time")\r
@@ -162,14 +164,6 @@ public class ChangeManagementSchedule implements Serializable {
 \r
     public ChangeManagementSchedule() {}\r
 \r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
-\r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
-\r
     public String getFinishTime() {\r
         if (finishTimeMillis != null)\r
             return ISODateTimeFormat.dateTimeNoMillis().print(finishTimeMillis);\r
@@ -218,15 +212,25 @@ public class ChangeManagementSchedule implements Serializable {
         this.tmChangeId = tmChangeId;\r
     }\r
 \r
-    public Integer getChangeManagementGroupsId() {\r
-        return changeManagementGroupsId;\r
-    }\r
 \r
-    public void setChangeManagementGroupsId(Integer changeManagementGroupsId) {\r
-        this.changeManagementGroupsId = changeManagementGroupsId;\r
-    }\r
+    public UUID getUuid() {\r
+               return uuid;\r
+       }\r
+\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
+\r
+       public UUID getChangeManagementGroupUuid() {\r
+               return changeManagementGroupUuid;\r
+       }\r
+\r
+       public void setChangeManagementGroupUuid(UUID changeManagementGroupUuid) {\r
+               this.changeManagementGroupUuid = changeManagementGroupUuid;\r
+       }\r
 \r
-    public String getDispatchTime() {\r
+       public String getDispatchTime() {\r
         if (dispatchTimeMillis != null)\r
             return ISODateTimeFormat.dateTimeNoMillis().print(dispatchTimeMillis);\r
         return null;\r
index fc86964..3bb0bea 100644 (file)
 package org.onap.optf.cmso.model;\r
 \r
 import java.io.Serializable;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.JoinColumn;\r
 import javax.persistence.ManyToOne;\r
 import javax.persistence.NamedQuery;\r
 import javax.persistence.Table;\r
+\r
 import com.fasterxml.jackson.annotation.JsonIgnore;\r
+\r
 import io.swagger.annotations.ApiModel;\r
 \r
 /**\r
@@ -56,29 +58,31 @@ public class DomainData implements Serializable {
 \r
     @JsonIgnore\r
     @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-   private Integer id;\r
+   private UUID uuid;\r
 \r
     private String name;\r
 \r
     private String value;\r
 \r
     @ManyToOne(optional = true)\r
-    @JoinColumn(name = "schedules_id", nullable = false, updatable = false)\r
+    @JoinColumn(name = "schedules_uuid", nullable = false, updatable = false)\r
     @JsonIgnore\r
     private Schedule schedule;\r
 \r
     public DomainData() {}\r
 \r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
 \r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
+    public UUID getUuid() {\r
+               return uuid;\r
+       }\r
+\r
+\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
 \r
-    public String getName() {\r
+       public String getName() {\r
         return this.name;\r
     }\r
 \r
diff --git a/cmso-service/src/main/java/org/onap/optf/cmso/model/HelloWorld.java b/cmso-service/src/main/java/org/onap/optf/cmso/model/HelloWorld.java
deleted file mode 100644 (file)
index ed09ad7..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
- * \r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- * \r
- *         http://www.apache.org/licenses/LICENSE-2.0\r
- * \r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * \r
- * \r
- * Unless otherwise specified, all documentation contained herein is licensed\r
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");\r
- * you may not use this documentation except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- * \r
- *         https://creativecommons.org/licenses/by/4.0/\r
- * \r
- * Unless required by applicable law or agreed to in writing, documentation\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
-*/\r
-\r
-package org.onap.optf.cmso.model;\r
-\r
-public class HelloWorld {\r
-\r
-    private String message;\r
-\r
-    public HelloWorld() {\r
-        // needed for deserializer\r
-    }\r
-\r
-    public HelloWorld(String message) {\r
-        this.message = message;\r
-    }\r
-\r
-    public String getMessage() {\r
-        return message;\r
-    }\r
-\r
-    public void setMessage(String message) {\r
-        this.message = message;\r
-    }\r
-\r
-    @Override\r
-    public String toString() {\r
-        return "message = " + getMessage();\r
-    }\r
-}\r
index d6fe4f9..624e376 100644 (file)
@@ -34,22 +34,25 @@ package org.onap.optf.cmso.model;
 import java.io.Serializable;\r
 import java.util.ArrayList;\r
 import java.util.List;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.CascadeType;\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.Lob;\r
 import javax.persistence.NamedQuery;\r
 import javax.persistence.OneToMany;\r
 import javax.persistence.Table;\r
 import javax.persistence.Transient;\r
+\r
 import org.hibernate.annotations.LazyCollection;\r
 import org.hibernate.annotations.LazyCollectionOption;\r
 import org.joda.time.format.ISODateTimeFormat;\r
+\r
 import com.fasterxml.jackson.annotation.JsonIgnore;\r
 import com.fasterxml.jackson.annotation.JsonProperty;\r
+\r
 import io.swagger.annotations.ApiModelProperty;\r
 \r
 /**\r
@@ -64,8 +67,7 @@ public class Schedule implements Serializable {
 \r
     @JsonIgnore\r
     @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-    private Integer id;\r
+    private UUID uuid;\r
 \r
     @JsonIgnore\r
     @Column(name = "create_date_time")\r
@@ -160,15 +162,23 @@ public class Schedule implements Serializable {
 \r
     public Schedule() {}\r
 \r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
+    public UUID getUuid() {\r
+               return uuid;\r
+       }\r
 \r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
+       public void setDomainData(List<DomainData> domainData) {\r
+               this.domainData = domainData;\r
+       }\r
+\r
+       public void setScheduleApprovals(List<ScheduleApproval> scheduleApprovals) {\r
+               this.scheduleApprovals = scheduleApprovals;\r
+       }\r
 \r
-    public String getCreateDateTime() {\r
+       public String getCreateDateTime() {\r
         if (createDateTimeMillis != null)\r
             return ISODateTimeFormat.dateTimeNoMillis().print(this.createDateTimeMillis);\r
         return null;\r
index dee3c42..3239ae3 100644 (file)
 package org.onap.optf.cmso.model;\r
 \r
 import java.io.Serializable;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
 import javax.persistence.Id;\r
 import javax.persistence.JoinColumn;\r
 import javax.persistence.ManyToOne;\r
 import javax.persistence.NamedQuery;\r
 import javax.persistence.Table;\r
 import javax.persistence.Transient;\r
+\r
 import org.joda.time.format.ISODateTimeFormat;\r
+\r
 import com.fasterxml.jackson.annotation.JsonIgnore;\r
 import com.fasterxml.jackson.annotation.JsonProperty;\r
+\r
 import io.swagger.annotations.ApiModel;\r
 import io.swagger.annotations.ApiModelProperty;\r
 \r
@@ -60,9 +63,8 @@ public class ScheduleApproval implements Serializable {
     private static final long serialVersionUID = 1L;\r
 \r
     @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
     @JsonIgnore\r
-    private Integer id;\r
+    private UUID uuid;\r
 \r
     @JsonIgnore\r
     @Column(name = "approval_date_time")\r
@@ -82,23 +84,16 @@ public class ScheduleApproval implements Serializable {
     private String userId;\r
 \r
     @ManyToOne(optional = true)\r
-    @JoinColumn(name = "schedules_id", nullable = false, updatable = false)\r
+    @JoinColumn(name = "schedules_uuid", nullable = false, updatable = false)\r
     @JsonIgnore\r
     private Schedule schedule;\r
 \r
     @JsonIgnore\r
-    @Column(name = "approval_type_id")\r
-    private Integer approvalTypeId;\r
+    @Column(name = "approval_types_uuid")\r
+    private UUID approvalTypesUuid;\r
 \r
     public ScheduleApproval() {}\r
 \r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
-\r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
 \r
     public String getApprovalDateTime() {\r
         if (approvalDateTimeMillis != null)\r
@@ -124,13 +119,6 @@ public class ScheduleApproval implements Serializable {
         this.userId = userId;\r
     }\r
 \r
-    public Integer getApprovalTypeId() {\r
-        return approvalTypeId;\r
-    }\r
-\r
-    public void setApprovalTypeId(Integer approvalTypeId) {\r
-        this.approvalTypeId = approvalTypeId;\r
-    }\r
 \r
     public void setSchedule(Schedule schedule) {\r
         this.schedule = schedule;\r
@@ -148,4 +136,26 @@ public class ScheduleApproval implements Serializable {
         this.approvalDateTimeMillis = approvalDateTimeMillis;\r
     }\r
 \r
+\r
+       public UUID getUuid() {\r
+               return uuid;\r
+       }\r
+\r
+\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
+\r
+\r
+       public UUID getApprovalTypesUuid() {\r
+               return approvalTypesUuid;\r
+       }\r
+\r
+\r
+       public void setApprovalTypesUuid(UUID approvalTypesUuid) {\r
+               this.approvalTypesUuid = approvalTypesUuid;\r
+       }\r
+\r
+\r
+\r
 }\r
diff --git a/cmso-service/src/main/java/org/onap/optf/cmso/model/ScheduleEvent.java b/cmso-service/src/main/java/org/onap/optf/cmso/model/ScheduleEvent.java
deleted file mode 100644 (file)
index 46cb46e..0000000
+++ /dev/null
@@ -1,163 +0,0 @@
-/*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
- * \r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- * \r
- *         http://www.apache.org/licenses/LICENSE-2.0\r
- * \r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * \r
- * \r
- * Unless otherwise specified, all documentation contained herein is licensed\r
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");\r
- * you may not use this documentation except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- * \r
- *         https://creativecommons.org/licenses/by/4.0/\r
- * \r
- * Unless required by applicable law or agreed to in writing, documentation\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
-*/\r
-\r
-package org.onap.optf.cmso.model;\r
-\r
-import java.io.Serializable;\r
-import javax.persistence.Column;\r
-import javax.persistence.Entity;\r
-import javax.persistence.GeneratedValue;\r
-import javax.persistence.GenerationType;\r
-import javax.persistence.Id;\r
-import javax.persistence.Lob;\r
-import javax.persistence.NamedQuery;\r
-import javax.persistence.Table;\r
-import javax.persistence.Transient;\r
-import org.joda.time.format.ISODateTimeFormat;\r
-import com.fasterxml.jackson.annotation.JsonIgnore;\r
-import com.fasterxml.jackson.annotation.JsonProperty;\r
-\r
-/**\r
- * The persistent class for the schedule_events database table.\r
- * \r
- */\r
-@Entity\r
-@Table(name = "SCHEDULE_EVENTS")\r
-@NamedQuery(name = "ScheduleEvent.findAll", query = "SELECT s FROM ScheduleEvent s")\r
-public class ScheduleEvent implements Serializable {\r
-    private static final long serialVersionUID = 1L;\r
-\r
-    @Id\r
-    @GeneratedValue(strategy=GenerationType.IDENTITY)\r
-    private Integer id;\r
-\r
-    private String domain;\r
-\r
-    @Lob\r
-    @Column(name = "event_text")\r
-    private String eventText;\r
-\r
-    @JsonIgnore\r
-    @Column(name = "event_time")\r
-    private Long eventTimeMillis;\r
-\r
-    @JsonProperty\r
-    @Transient\r
-    private String eventTime;\r
-\r
-    @JsonIgnore\r
-    @Column(name = "reminder_time")\r
-    private Long reminderTimeMillis;\r
-\r
-    @JsonProperty\r
-    @Transient\r
-    private String reminderTime;\r
-\r
-    @Column(name = "schedules_id")\r
-    private Integer schedulesId;\r
-\r
-    private String status;\r
-\r
-    public ScheduleEvent() {}\r
-\r
-    public Integer getId() {\r
-        return this.id;\r
-    }\r
-\r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
-\r
-    public String getDomain() {\r
-        return this.domain;\r
-    }\r
-\r
-    public void setDomain(String domain) {\r
-        this.domain = domain;\r
-    }\r
-\r
-    public String getEventText() {\r
-        return this.eventText;\r
-    }\r
-\r
-    public void setEventText(String eventText) {\r
-        this.eventText = eventText;\r
-    }\r
-\r
-    public Integer getSchedulesId() {\r
-        return this.schedulesId;\r
-    }\r
-\r
-    public void setSchedulesId(Integer schedulesId) {\r
-        this.schedulesId = schedulesId;\r
-    }\r
-\r
-    public String getStatus() {\r
-        return this.status;\r
-    }\r
-\r
-    public void setStatus(String status) {\r
-        this.status = status;\r
-    }\r
-\r
-    public Long getEventTimeMillis() {\r
-        return eventTimeMillis;\r
-    }\r
-\r
-    public void setEventTimeMillis(Long eventTimeMillis) {\r
-        this.eventTimeMillis = eventTimeMillis;\r
-    }\r
-\r
-    public String getEventTime() {\r
-        if (eventTimeMillis != null)\r
-            return ISODateTimeFormat.dateTimeNoMillis().print(this.eventTimeMillis);\r
-        return null;\r
-    }\r
-\r
-    public void setEventTime(String eventTime) {}\r
-\r
-    public Long getReminderTimeMillis() {\r
-        return reminderTimeMillis;\r
-    }\r
-\r
-    public void setReminderTimeMillis(Long reminderTimeMillis) {\r
-        this.reminderTimeMillis = reminderTimeMillis;\r
-    }\r
-\r
-    public String getReminderTime() {\r
-        if (reminderTimeMillis != null)\r
-            return ISODateTimeFormat.dateTimeNoMillis().print(this.reminderTimeMillis);\r
-        return null;\r
-    }\r
-\r
-    public void setReminderTime(String reminderTime) {}\r
-\r
-}\r
index 84d3e5c..628fc6f 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -31,6 +31,8 @@
 \r
 package org.onap.optf.cmso.model;\r
 \r
+import java.util.UUID;\r
+\r
 import javax.persistence.Column;\r
 import javax.persistence.Entity;\r
 import javax.persistence.Id;\r
@@ -38,15 +40,16 @@ import javax.persistence.Id;
 @Entity\r
 public class ScheduleQuery {\r
     @Id\r
-    @Column(name = "id")\r
-    private Integer id;\r
+    @Column(name = "uuid")\r
+    private UUID uuid;\r
+\r
+       public UUID getUuid() {\r
+               return uuid;\r
+       }\r
 \r
-    public Integer getId() {\r
-        return id;\r
-    }\r
+       public void setUuid(UUID uuid) {\r
+               this.uuid = uuid;\r
+       }\r
 \r
-    public void setId(Integer id) {\r
-        this.id = id;\r
-    }\r
 \r
 }\r
index 7eb2430..9e4b546 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -33,12 +33,14 @@ package org.onap.optf.cmso.model.dao;
 \r
 import java.util.List;\r
 import java.util.Optional;\r
+import java.util.UUID;\r
+\r
 import org.onap.optf.cmso.model.ApprovalType;\r
 import org.springframework.data.jpa.repository.Query;\r
 import org.springframework.data.repository.PagingAndSortingRepository;\r
 \r
-public interface ApprovalTypeDAO extends PagingAndSortingRepository<ApprovalType, Integer> {\r
-    Optional<ApprovalType> findById(Integer id);\r
+public interface ApprovalTypeDAO extends PagingAndSortingRepository<ApprovalType, UUID> {\r
+    Optional<ApprovalType> findById(UUID id);\r
 \r
     ApprovalType save(ApprovalType persisted);\r
 \r
index 293209e..303be20 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -33,24 +33,26 @@ package org.onap.optf.cmso.model.dao;
 \r
 import java.util.List;\r
 import java.util.Optional;\r
+import java.util.UUID;\r
+\r
 import org.onap.optf.cmso.model.ChangeManagementChangeWindow;\r
 import org.springframework.data.jpa.repository.Modifying;\r
 import org.springframework.data.jpa.repository.Query;\r
 import org.springframework.data.repository.PagingAndSortingRepository;\r
 \r
 public interface ChangeManagementChangeWindowDAO\r
-        extends PagingAndSortingRepository<ChangeManagementChangeWindow, Integer> {\r
-    Optional<ChangeManagementChangeWindow> findById(Integer id);\r
+        extends PagingAndSortingRepository<ChangeManagementChangeWindow, UUID> {\r
+    Optional<ChangeManagementChangeWindow> findById(UUID id);\r
 \r
     ChangeManagementChangeWindow save(ChangeManagementChangeWindow persisted);\r
 \r
     void delete(ChangeManagementChangeWindow toDelete);\r
 \r
-    @Query(value = "SELECT d FROM ChangeManagementChangeWindow d WHERE d.changeManagementGroupsId = ?1")\r
-    List<ChangeManagementChangeWindow> findByGroupsID(Integer id);\r
+    @Query(value = "SELECT d FROM ChangeManagementChangeWindow d WHERE d.changeManagementGroupUuid = ?1")\r
+    List<ChangeManagementChangeWindow> findByGroupsUUID(UUID id);\r
 \r
     @Modifying\r
-    @Query(value = "DELETE FROM ChangeManagementChangeWindow d WHERE d.changeManagementGroupsId = ?1")\r
-    int deleteByChangeManagementGroupId(int id);\r
+    @Query(value = "DELETE FROM ChangeManagementChangeWindow d WHERE d.changeManagementGroupUuid = ?1")\r
+    int deleteByChangeManagementGroupUuid(UUID id);\r
 \r
 }\r
index 2c083d6..028241c 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -46,7 +46,7 @@ public class ChangeManagementDetailDAOImpl implements ChangeManagementDetailDAO
     @Override\r
     public List<ChangeManagementDetail> searchScheduleDetails(String where, int limit) {\r
         StringBuilder sql = new StringBuilder();\r
-        sql.append("select distinct" + " s.id as id," + " s.vnf_name as vnf_name," + " s.vnf_id as vnf_id,"\r
+        sql.append("select distinct" + " s.uuid as uuid," + " s.vnf_name as vnf_name," + " s.vnf_id as vnf_id,"\r
                 + " s.status as status," + " s.tm_change_id as tm_change_Id," + " s.start_time as start_time,"\r
                 + " s.finish_time as finish_time," + " s.mso_request_id as mso_request_id,"\r
                 + " s.mso_status as mso_status," + " s.mso_message as mso_message," + " s.mso_time as mso_time,"\r
@@ -54,17 +54,17 @@ public class ChangeManagementDetailDAOImpl implements ChangeManagementDetailDAO
                 + " s.status_message as status_message," + " s.tm_approval_status as tm_approval_status,"\r
                 + " s.tm_status as tm_status," + " g.group_id as group_id,"\r
                 + " g.last_instance_start_time as last_instance_start_time," + " g.policy_id as policy_id,"\r
-                + " g.schedules_id as schedules_id"\r
+                + " g.schedules_uuid as schedules_uuid"\r
                 // + " ss.schedule_id as scheduleId,"\r
                 // + " dd.name"\r
                 + " from" + " CHANGE_MANAGEMENT_SCHEDULES s"\r
-                + " inner join CHANGE_MANAGEMENT_GROUPS g on s.change_management_groups_id = g.id"\r
-                + " inner join SCHEDULES ss on g.schedules_id = ss.id "\r
-                + " left outer join DOMAIN_DATA dd on ss.id = dd.schedules_id"\r
-                + " left outer join SCHEDULE_APPROVALS sa on ss.id = sa.schedules_id"\r
-                + " left outer join APPROVAL_TYPES at on sa.approval_type_id = at.id ");\r
+                + " inner join CHANGE_MANAGEMENT_GROUPS g on s.change_management_group_uuid = g.uuid"\r
+                + " inner join SCHEDULES ss on g.schedules_uuid = ss.uuid "\r
+                + " left outer join DOMAIN_DATA dd on ss.uuid = dd.schedules_uuid"\r
+                + " left outer join SCHEDULE_APPROVALS sa on ss.uuid = sa.schedules_uuid"\r
+                + " left outer join APPROVAL_TYPES at on sa.approval_types_uuid = at.uuid ");\r
         sql.append(where);\r
-        sql.append(" order by id ");\r
+        sql.append(" order by uuid ");\r
         if (limit > 0)\r
             sql.append("LIMIT " + limit);\r
 \r
index 39f4baa..7acc228 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -33,21 +33,23 @@ package org.onap.optf.cmso.model.dao;
 \r
 import java.util.List;\r
 import java.util.Optional;\r
+import java.util.UUID;\r
+\r
 import org.onap.optf.cmso.model.ChangeManagementGroup;\r
 import org.springframework.data.jpa.repository.Query;\r
 import org.springframework.data.repository.PagingAndSortingRepository;\r
 \r
-public interface ChangeManagementGroupDAO extends PagingAndSortingRepository<ChangeManagementGroup, Integer> {\r
-    Optional<ChangeManagementGroup> findById(Integer id);\r
+public interface ChangeManagementGroupDAO extends PagingAndSortingRepository<ChangeManagementGroup, UUID> {\r
+    Optional<ChangeManagementGroup> findById(UUID id);\r
 \r
     ChangeManagementGroup save(ChangeManagementGroup persisted);\r
 \r
     void delete(ChangeManagementGroup toDelete);\r
 \r
-    @Query(value = "SELECT d FROM ChangeManagementGroup d WHERE d.schedulesId = ?1")\r
-    List<ChangeManagementGroup> findBySchedulesID(Integer id);\r
+    @Query(value = "SELECT d FROM ChangeManagementGroup d WHERE d.schedulesUuid = ?1")\r
+    List<ChangeManagementGroup> findBySchedulesID(UUID id);\r
 \r
-    @Query(value = "SELECT d FROM ChangeManagementGroup d WHERE d.schedulesId = ?1 AND d.groupId = ?2")\r
-    ChangeManagementGroup findOneBySchedulesIDGroupID(Integer id, String groupId);\r
+    @Query(value = "SELECT d FROM ChangeManagementGroup d WHERE d.schedulesUuid = ?1 AND d.groupId = ?2")\r
+    ChangeManagementGroup findOneBySchedulesIDGroupID(UUID id, String groupId);\r
 \r
 }\r
index a089c2b..ad01a34 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -33,29 +33,32 @@ package org.onap.optf.cmso.model.dao;
 \r
 import java.util.List;\r
 import java.util.Optional;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.LockModeType;\r
+\r
 import org.onap.optf.cmso.model.ChangeManagementSchedule;\r
 import org.springframework.data.jpa.repository.Lock;\r
 import org.springframework.data.jpa.repository.Modifying;\r
 import org.springframework.data.jpa.repository.Query;\r
 import org.springframework.data.repository.PagingAndSortingRepository;\r
 \r
-public interface ChangeManagementScheduleDAO extends PagingAndSortingRepository<ChangeManagementSchedule, Integer> {\r
-    Optional<ChangeManagementSchedule> findById(Integer id);\r
+public interface ChangeManagementScheduleDAO extends PagingAndSortingRepository<ChangeManagementSchedule, UUID> {\r
+    Optional<ChangeManagementSchedule> findById(UUID id);\r
 \r
     ChangeManagementSchedule save(ChangeManagementSchedule persisted);\r
 \r
     void delete(ChangeManagementSchedule toDelete);\r
 \r
-    @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE d.changeManagementGroupsId = ?1")\r
-    List<ChangeManagementSchedule> findByChangeManagementGroupId(Integer id);\r
+    @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE d.changeManagementGroupUuid = ?1")\r
+    List<ChangeManagementSchedule> findByChangeManagementGroupId(UUID id);\r
 \r
     @Modifying\r
-    @Query(value = "DELETE FROM ChangeManagementSchedule d WHERE d.changeManagementGroupsId = ?1")\r
-    public int deleteByChangeManagementGroupsId(Integer id);\r
+    @Query(value = "DELETE FROM ChangeManagementSchedule d WHERE d.changeManagementGroupUuid = ?1")\r
+    public int deleteByChangeManagementGroupsId(UUID id);\r
 \r
-    @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE d.changeManagementGroupsId = ?1 AND d.vnfName = ?2")\r
-    ChangeManagementSchedule findOneByGroupIDAndVnfName(Integer id, String vnfName);\r
+    @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE d.changeManagementGroupUuid = ?1 AND d.vnfName = ?2")\r
+    ChangeManagementSchedule findOneByGroupIDAndVnfName(UUID id, String vnfName);\r
 \r
     @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE (d.status = ?1 AND d.startTimeMillis <= ?2) or d.status = 'Scheduled Immediate' order by d.startTimeMillis")\r
     List<ChangeManagementSchedule> findByStatusAndEndTime(String status, Long date);\r
@@ -70,8 +73,8 @@ public interface ChangeManagementScheduleDAO extends PagingAndSortingRepository<
     @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE d.tmApprovalStatus = 'Pending Approval'")\r
     List<ChangeManagementSchedule> findAllAwaitingTmApproval();\r
 \r
-    @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE d.id = ?1")\r
+    @Query(value = "SELECT d FROM ChangeManagementSchedule d WHERE d.uuid = ?1")\r
     @Lock(LockModeType.PESSIMISTIC_WRITE)\r
-    ChangeManagementSchedule lockOne(Integer id);\r
+    ChangeManagementSchedule lockOne(UUID id);\r
 \r
 }\r
index 9556938..75299a1 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
 package org.onap.optf.cmso.model.dao;\r
 \r
 import java.util.Optional;\r
+import java.util.UUID;\r
+\r
 import org.onap.optf.cmso.model.DomainData;\r
 import org.springframework.data.repository.PagingAndSortingRepository;\r
 \r
-public interface DomainDataDAO extends PagingAndSortingRepository<DomainData, Integer> {\r
-    Optional<DomainData> findById(Integer id);\r
+public interface DomainDataDAO extends PagingAndSortingRepository<DomainData, UUID> {\r
+    Optional<DomainData> findById(UUID id);\r
 \r
     DomainData save(DomainData persisted);\r
 \r
index d9badd0..3fabd63 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
 package org.onap.optf.cmso.model.dao;\r
 \r
 import java.util.Optional;\r
+import java.util.UUID;\r
+\r
 import org.onap.optf.cmso.model.ScheduleApproval;\r
 import org.springframework.data.repository.PagingAndSortingRepository;\r
 \r
-public interface ScheduleApprovalDAO extends PagingAndSortingRepository<ScheduleApproval, Integer> {\r
-    Optional<ScheduleApproval> findById(Integer id);\r
+public interface ScheduleApprovalDAO extends PagingAndSortingRepository<ScheduleApproval, UUID> {\r
+    Optional<ScheduleApproval> findById(UUID id);\r
 \r
     ScheduleApproval save(ScheduleApproval persisted);\r
 \r
index f68fd22..90843c4 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -33,14 +33,17 @@ package org.onap.optf.cmso.model.dao;
 \r
 import java.util.List;\r
 import java.util.Optional;\r
+import java.util.UUID;\r
+\r
 import javax.persistence.LockModeType;\r
+\r
 import org.onap.optf.cmso.model.Schedule;\r
 import org.springframework.data.jpa.repository.Lock;\r
 import org.springframework.data.jpa.repository.Query;\r
 import org.springframework.data.repository.PagingAndSortingRepository;\r
 \r
-public interface ScheduleDAO extends PagingAndSortingRepository<Schedule, Integer> {\r
-    Optional<Schedule> findById(Integer id);\r
+public interface ScheduleDAO extends PagingAndSortingRepository<Schedule, UUID> {\r
+    Optional<Schedule> findById(UUID id);\r
 \r
     Schedule save(Schedule persited);\r
 \r
@@ -58,9 +61,9 @@ public interface ScheduleDAO extends PagingAndSortingRepository<Schedule, Intege
     @Query(value = "SELECT s FROM Schedule s WHERE s.domain = ?1 AND s.status = 'Notifications Initiated'")\r
     List<Schedule> findAllInProgress(String string);\r
 \r
-    @Query(value = "SELECT d FROM Schedule d WHERE d.id = ?1")\r
+    @Query(value = "SELECT d FROM Schedule d WHERE d.uuid = ?1")\r
     @Lock(LockModeType.PESSIMISTIC_WRITE)\r
-    Schedule lockOne(Integer id);\r
+    Schedule lockOne(UUID id);\r
 \r
     @Query(value = "SELECT s FROM Schedule s WHERE s.optimizerTransactionId= ?1")\r
     @Lock(LockModeType.PESSIMISTIC_WRITE)\r
diff --git a/cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ScheduleEventDAO.java b/cmso-service/src/main/java/org/onap/optf/cmso/model/dao/ScheduleEventDAO.java
deleted file mode 100644 (file)
index c3c2483..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
- * \r
- * Licensed under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- * \r
- *         http://www.apache.org/licenses/LICENSE-2.0\r
- * \r
- * Unless required by applicable law or agreed to in writing, software\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * \r
- * \r
- * Unless otherwise specified, all documentation contained herein is licensed\r
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");\r
- * you may not use this documentation except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- * \r
- *         https://creativecommons.org/licenses/by/4.0/\r
- * \r
- * Unless required by applicable law or agreed to in writing, documentation\r
- * distributed under the License is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
-*/\r
-\r
-package org.onap.optf.cmso.model.dao;\r
-\r
-import java.util.List;\r
-import java.util.Optional;\r
-import org.onap.optf.cmso.model.ScheduleEvent;\r
-import org.springframework.data.jpa.repository.Query;\r
-import org.springframework.data.repository.PagingAndSortingRepository;\r
-\r
-public interface ScheduleEventDAO extends PagingAndSortingRepository<ScheduleEvent, Integer> {\r
-    Optional<ScheduleEvent> findById(Integer id);\r
-\r
-    ScheduleEvent save(ScheduleEvent persisted);\r
-\r
-    void delete(ScheduleEvent toDelete);\r
-\r
-    @Query(value = "SELECT d FROM ScheduleEvent d WHERE d.schedulesId = ?1")\r
-    List<ScheduleEvent> findByScheduleId(Integer id);\r
-\r
-    @Query(value = "SELECT d FROM ScheduleEvent d WHERE d.status = ?1 AND d.reminderTimeMillis <= ?2")\r
-    List<ScheduleEvent> findByStatusAndEndTime(String status, Long date);\r
-\r
-}\r
index 37fbf52..80bb7f0 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -46,14 +46,14 @@ public class ScheduleQueryDAOImpl implements ScheduleQueryDAO {
     @Override\r
     public List<ScheduleQuery> searchSchedules(String where, int limit) {\r
         StringBuilder sql = new StringBuilder();\r
-        sql.append("select distinct" + " ss.id as id" + " from" + " SCHEDULES ss"\r
-                + " left outer join CHANGE_MANAGEMENT_GROUPS g on ss.id = g.schedules_id"\r
-                + " left outer join CHANGE_MANAGEMENT_SCHEDULES s on g.id =  s.change_management_groups_id"\r
-                + " left outer join DOMAIN_DATA dd on ss.id = dd.schedules_id"\r
-                + " left outer join SCHEDULE_APPROVALS sa on ss.id = sa.schedules_id"\r
-                + " left outer join APPROVAL_TYPES at on sa.approval_type_id = at.id ");\r
+        sql.append("select distinct" + " ss.uuid as uuid" + " from" + " SCHEDULES ss"\r
+                + " left outer join CHANGE_MANAGEMENT_GROUPS g on ss.uuid = g.schedules_uuid"\r
+                + " left outer join CHANGE_MANAGEMENT_SCHEDULES s on g.uuid =  s.change_management_group_uuid"\r
+                + " left outer join DOMAIN_DATA dd on ss.uuid = dd.schedules_uuid"\r
+                + " left outer join SCHEDULE_APPROVALS sa on ss.uuid = sa.schedules_uuid"\r
+                + " left outer join APPROVAL_TYPES at on sa.approval_types_uuid = at.uuid ");\r
         sql.append(where);\r
-        sql.append(" order by id ");\r
+        sql.append(" order by uuid ");\r
         if (limit > 0)\r
             sql.append("LIMIT " + limit);\r
 \r
index 9feea2d..a773798 100644 (file)
@@ -85,7 +85,7 @@ public class CMSOptimizerClient {
     @Autowired\r
     PropertiesManagement pm;\r
 \r
-    public boolean scheduleOptimization(Integer id) {\r
+    public boolean scheduleOptimization(UUID uuid) {\r
         Map<String, String> mdcSave = Mdc.save();\r
         try {\r
             String optimizerurl = env.getProperty("cmso.optimizer.url");\r
@@ -94,7 +94,7 @@ public class CMSOptimizerClient {
             Integer maxAttempts = env.getProperty("cmso.optimizer.maxAttempts", Integer.class, 20);\r
 \r
             // Ensure that only one cmso is requsting this call to optimizer\r
-            Schedule schedule = scheduleDAO.lockOne(id);\r
+            Schedule schedule = scheduleDAO.lockOne(uuid);\r
             if (!schedule.getStatus().equals(CMSStatusEnum.PendingSchedule.toString()))\r
                 return false;\r
 \r
index 39d590b..12d56f3 100644 (file)
@@ -33,6 +33,8 @@ package org.onap.optf.cmso.optimizer;
 \r
 import java.util.List;\r
 import java.util.Map;\r
+import java.util.UUID;\r
+\r
 import javax.ws.rs.client.Client;\r
 import javax.ws.rs.client.ClientBuilder;\r
 import javax.ws.rs.client.Invocation;\r
@@ -57,6 +59,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;\r
 import org.springframework.scheduling.quartz.QuartzJobBean;\r
 import org.springframework.stereotype.Component;\r
+\r
 import com.att.eelf.configuration.EELFLogger;\r
 import com.att.eelf.configuration.EELFManager;\r
 \r
@@ -107,7 +110,7 @@ public class OptimizerQuartzJob extends QuartzJobBean {
     }\r
 \r
     public void scheduleOptimization(Schedule s) {\r
-        Integer id = s.getId();\r
+        UUID id = s.getUuid();\r
         Map<String, String> mdcSave = Mdc.save();\r
         try {\r
             String url = env.getProperty("cmso.dispatch.url", "http://localhost:8089");\r
index 2e0cfeb..787bd60 100644 (file)
@@ -35,7 +35,10 @@ import java.util.ArrayList;
 import java.util.HashMap;\r
 import java.util.List;\r
 import java.util.Map;\r
+import java.util.UUID;\r
+\r
 import javax.ws.rs.core.Response.Status;\r
+\r
 import org.onap.optf.cmso.common.ApprovalStatusEnum;\r
 import org.onap.optf.cmso.common.CMSStatusEnum;\r
 import org.onap.optf.cmso.common.LogMessages;\r
@@ -54,6 +57,7 @@ import org.onap.optf.cmso.service.rs.models.ApprovalMessage;
 import org.onap.optf.cmso.service.rs.models.ScheduleMessage;\r
 import org.springframework.beans.factory.annotation.Autowired;\r
 import org.springframework.stereotype.Controller;\r
+\r
 import com.att.eelf.configuration.EELFLogger;\r
 import com.att.eelf.configuration.EELFManager;\r
 \r
@@ -82,6 +86,7 @@ public class BaseSchedulerServiceImpl {
             throw new CMSAlreadyExistsException(scheduleMessage.getDomain(), scheduleMessage.getScheduleId());\r
         }\r
         s = new Schedule();\r
+        s.setUuid(UUID.randomUUID());\r
         s.setUserId(scheduleMessage.getUserId());\r
         s.setCreateDateTimeMillis(System.currentTimeMillis());\r
         s.setDomain(scheduleMessage.getDomain());\r
@@ -96,6 +101,7 @@ public class BaseSchedulerServiceImpl {
         s.setStatus(CMSStatusEnum.PendingSchedule.toString());\r
         scheduleDAO.save(s);\r
         for (DomainData dd : domainData) {\r
+               dd.setUuid(UUID.randomUUID());\r
             s.addDomainData(dd);\r
             domainDataDAO.save(dd);\r
         }\r
@@ -153,15 +159,16 @@ public class BaseSchedulerServiceImpl {
         if (s.getScheduleApprovals() != null) {\r
             for (ScheduleApproval scheduleApproval : s.getScheduleApprovals()) {\r
                 if (scheduleApproval.getUserId().equals(approvalMessage.getApprovalUserId())\r
-                        && scheduleApproval.getApprovalTypeId().equals(approvalType.getId())) {\r
+                        && scheduleApproval.getApprovalTypesUuid().equals(approvalType.getUuid())) {\r
                     sa = scheduleApproval;\r
                 }\r
             }\r
         }\r
         if (sa == null) {\r
             sa = new ScheduleApproval();\r
+            sa.setUuid(UUID.randomUUID());\r
             sa.setSchedule(s);\r
-            sa.setApprovalTypeId(approvalType.getId());\r
+            sa.setApprovalTypesUuid(approvalType.getUuid());\r
             sa.setUserId(approvalMessage.getApprovalUserId());\r
         }\r
         // Ignore what time is on the message\r
@@ -181,18 +188,18 @@ public class BaseSchedulerServiceImpl {
     }\r
 \r
     private boolean allApprovalsReceived(Schedule schedule, ScheduleApproval sa) {\r
-        Map<Integer, Integer> requiredApprovalsByType = new HashMap<Integer, Integer>(); // Approval\r
+        Map<UUID, Integer> requiredApprovalsByType = new HashMap<>(); // Approval\r
                                                                                          // countdown\r
-        Map<Integer, ApprovalType> approvalsByType = new HashMap<Integer, ApprovalType>(); // Just\r
+        Map<UUID, ApprovalType> approvalsByType = new HashMap<>(); // Just\r
                                                                                            // for\r
                                                                                            // logging\r
 \r
         List<ApprovalType> approvalTypes = approvalTypeDAO.findByDomain(schedule.getDomain());\r
         for (ApprovalType at : approvalTypes) {\r
-            Integer type = at.getId();\r
+            UUID type = at.getUuid();\r
             Integer count = at.getApprovalCount();\r
             requiredApprovalsByType.put(type, count);\r
-            approvalsByType.put(at.getId(), at);\r
+            approvalsByType.put(at.getUuid(), at);\r
         }\r
 \r
         // Account for approvals so far\r
@@ -205,17 +212,17 @@ public class BaseSchedulerServiceImpl {
         }\r
         for (ScheduleApproval approval : existingApprovals) {\r
             if (approval.getStatus().equals(ApprovalStatusEnum.Accepted.toString())) {\r
-                Integer remaining = requiredApprovalsByType.get(approval.getApprovalTypeId());\r
+                Integer remaining = requiredApprovalsByType.get(approval.getApprovalTypesUuid());\r
                 if (remaining != null) {\r
                     remaining = remaining - 1;\r
-                    requiredApprovalsByType.put(approval.getApprovalTypeId(), remaining);\r
+                    requiredApprovalsByType.put(approval.getApprovalTypesUuid(), remaining);\r
                 } else {\r
-                    log.warn("Ignored Unidentified approval type {0} for domain {1}", approval.getApprovalTypeId(),\r
+                    log.warn("Ignored Unidentified approval type {0} for domain {1}", approval.getApprovalTypesUuid(),\r
                             schedule.getDomain());\r
                 }\r
             }\r
         }\r
-        for (Integer id : requiredApprovalsByType.keySet()) {\r
+        for (UUID id : requiredApprovalsByType.keySet()) {\r
             Integer remaining = requiredApprovalsByType.get(id);\r
             if (remaining > 0) {\r
                 return false;\r
index 679dd02..50d2ff2 100644 (file)
@@ -167,7 +167,7 @@ public class CMSOOptimizerCallbackImpl extends BaseSchedulerServiceImpl implemen
                     DateTime latestInstanceStartTime =
                             convertDate(sniroSchedule.getLatestInstanceStartTime(), "latestInstanceStartTime");
                     DateTime startTime = convertDate(sniroSchedule.getStartTime(), "startTime");
-                    ChangeManagementGroup group = cmGroupDAO.findOneBySchedulesIDGroupID(schedule.getId(), groupId);
+                    ChangeManagementGroup group = cmGroupDAO.findOneBySchedulesIDGroupID(schedule.getUuid(), groupId);
                     if (group == null) {
                         throw new CMSException(Status.PRECONDITION_FAILED,
                                 LogMessages.CHANGE_MANAGEMENT_GROUP_NOT_FOUND, schedule.getScheduleId(), groupId);
@@ -232,7 +232,7 @@ public class CMSOOptimizerCallbackImpl extends BaseSchedulerServiceImpl implemen
     private void processNode(Schedule schedule, ChangeManagementGroup group, String node,
             Map<String, Map<String, Long>> startAndFinishTimeMap) throws CMSException {
         Map<String, Long> map = startAndFinishTimeMap.get(node);
-        ChangeManagementSchedule detail = cmScheduleDAO.findOneByGroupIDAndVnfName(group.getId(), node);
+        ChangeManagementSchedule detail = cmScheduleDAO.findOneByGroupIDAndVnfName(group.getUuid(), node);
         if (detail == null) {
             throw new CMSException(Status.NOT_FOUND, LogMessages.UNABLE_TO_LOCATE_SCHEDULE_DETAIL,
                     schedule.getScheduleId(), group.getGroupId(), node);
index d65dd25..cc304db 100644 (file)
@@ -39,6 +39,7 @@ import java.util.List;
 import java.util.Map;\r
 import java.util.Set;\r
 import java.util.TimeZone;\r
+import java.util.UUID;\r
 \r
 import javax.servlet.http.HttpServletRequest;\r
 import javax.ws.rs.core.MultivaluedMap;\r
@@ -143,15 +144,15 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
             }\r
             Iterator<ScheduleQuery> iter = list.iterator();\r
             while (iter.hasNext()) {\r
-                Schedule s = scheduleDAO.findById(iter.next().getId()).orElse(null);\r
+                Schedule s = scheduleDAO.findById(iter.next().getUuid()).orElse(null);\r
                 if (s != null) {\r
                     schedules.add(s);\r
                     if (includeDetails) {\r
-                        List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(s.getId());\r
+                        List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(s.getUuid());\r
                         s.setGroups(groups);\r
                         for (ChangeManagementGroup g : groups) {\r
                             List<ChangeManagementSchedule> cmSchedules =\r
-                                    cmScheduleDAO.findByChangeManagementGroupId(g.getId());\r
+                                    cmScheduleDAO.findByChangeManagementGroupId(g.getUuid());\r
                             g.setChangeManagementSchedules(cmSchedules);\r
                         }\r
                     }\r
@@ -300,7 +301,8 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
         CMSInfo schedulingInfo = scheduleMessage.getSchedulingInfo();\r
         for (VnfDetailsMessage vnfDetail : schedulingInfo.getVnfDetails()) {\r
             ChangeManagementGroup cmg = new ChangeManagementGroup();\r
-            cmg.setSchedulesId(schedule.getId());\r
+            cmg.setUuid(UUID.randomUUID());\r
+            cmg.setSchedulesUuid(schedule.getUuid());\r
             cmg.setGroupId("");\r
             if (vnfDetail.getGroupId() != null)\r
                 cmg.setGroupId(vnfDetail.getGroupId());\r
@@ -311,7 +313,8 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
             cmGroupDAO.save(cmg);\r
             for (ChangeWindowMessage cw : vnfDetail.getChangeWindow()) {\r
                 ChangeManagementChangeWindow cmcw = new ChangeManagementChangeWindow();\r
-                cmcw.setChangeManagementGroupsId(cmg.getId());\r
+                cmcw.setUuid(UUID.randomUUID());\r
+                cmcw.setChangeManagementGroupUuid(cmg.getUuid());\r
                 DateTime start = CMSOOptimizerCallbackImpl.convertISODate(cw.getStartTime(), "startTime");\r
                 DateTime end = CMSOOptimizerCallbackImpl.convertISODate(cw.getEndTime(), "startTime");\r
                 cmcw.setStartTimeMillis(start.getMillis());\r
@@ -321,7 +324,8 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
 \r
             for (String vnf : vnfDetail.getNode()) {\r
                 ChangeManagementSchedule cms = new ChangeManagementSchedule();\r
-                cms.setChangeManagementGroupsId(cmg.getId());\r
+                cms.setUuid(UUID.randomUUID());\r
+                cms.setChangeManagementGroupUuid(cmg.getUuid());\r
                 cms.setVnfName(vnf);\r
                 cms.setStatus(CMSStatusEnum.PendingSchedule.toString());\r
                 cmScheduleDAO.save(cms);\r
@@ -333,7 +337,8 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
         CMSInfo schedulingInfo = scheduleMessage.getSchedulingInfo();\r
         for (VnfDetailsMessage vnfDetail : schedulingInfo.getVnfDetails()) {\r
             ChangeManagementGroup cmg = new ChangeManagementGroup();\r
-            cmg.setSchedulesId(schedule.getId());\r
+            cmg.setUuid(UUID.randomUUID());\r
+            cmg.setSchedulesUuid(schedule.getUuid());\r
             cmg.setGroupId("");\r
             int duration = schedulingInfo.getNormalDurationInSeconds();\r
             int backout = schedulingInfo.getAdditionalDurationInSeconds();\r
@@ -346,20 +351,22 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
             cmGroupDAO.save(cmg);\r
             for (String vnf : vnfDetail.getNode()) {\r
                 ChangeManagementSchedule cms = new ChangeManagementSchedule();\r
-                cms.setChangeManagementGroupsId(cmg.getId());\r
+                cms.setUuid(UUID.randomUUID());\r
+                cms.setChangeManagementGroupUuid(cmg.getUuid());\r
                 cms.setVnfName(vnf);\r
                 cms.setStatus(CMSStatusEnum.PendingApproval.toString());\r
                 cmScheduleDAO.save(cms);\r
             }\r
             schedule.setStatus(CMSStatusEnum.PendingApproval.toString());\r
+            scheduleDAO.save(schedule);\r
         }\r
     }\r
 \r
     private void deleteChangeManagement(Schedule schedule) throws CMSException {\r
-        List<ChangeManagementGroup> cmgs = cmGroupDAO.findBySchedulesID(schedule.getId());\r
+        List<ChangeManagementGroup> cmgs = cmGroupDAO.findBySchedulesID(schedule.getUuid());\r
 \r
         for (ChangeManagementGroup cmg : cmgs) {\r
-            List<ChangeManagementSchedule> schedules = cmScheduleDAO.findByChangeManagementGroupId(cmg.getId());\r
+            List<ChangeManagementSchedule> schedules = cmScheduleDAO.findByChangeManagementGroupId(cmg.getUuid());\r
             for (ChangeManagementSchedule s : schedules) {\r
                 CMSStatusEnum currentState = CMSStatusEnum.Completed.fromString(s.getStatus());\r
                 switch (currentState) {\r
@@ -494,7 +501,7 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
 \r
     private void processApproveScheduleRequest(Schedule s, ApprovalMessage approval, List<DomainData> domainData)\r
             throws CMSException {\r
-        s = scheduleDAO.lockOne(s.getId());\r
+        s = scheduleDAO.lockOne(s.getUuid());\r
         String domain = DomainsEnum.ChangeManagement.toString();\r
         processApproval(s, domain, approval);\r
         if (s.getStatus().equals(CMSStatusEnum.Accepted.toString())) {\r
@@ -510,10 +517,10 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
 \r
         Integer max_vnfs_per_ticket = env.getProperty("tm.vnfs.per.ticket", Integer.class, 1);\r
 \r
-        List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(s.getId());\r
+        List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(s.getUuid());\r
         for (ChangeManagementGroup group : groups) {\r
 \r
-            List<ChangeManagementSchedule> schedules = cmScheduleDAO.findByChangeManagementGroupId(group.getId());\r
+            List<ChangeManagementSchedule> schedules = cmScheduleDAO.findByChangeManagementGroupId(group.getUuid());\r
             List<List<ChangeManagementSchedule>> ticketList = new ArrayList<List<ChangeManagementSchedule>>();\r
             List<ChangeManagementSchedule> current = null;\r
             for (ChangeManagementSchedule cms : schedules) {\r
@@ -560,9 +567,9 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
 \r
     private void updateChangeManagementSchedules(Schedule s, CMSStatusEnum approvalrejected) {\r
         debug.debug("Entered updateChangeManagementSchedules");\r
-        List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(s.getId());\r
+        List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(s.getUuid());\r
         for (ChangeManagementGroup group : groups) {\r
-            List<ChangeManagementSchedule> schedules = cmScheduleDAO.findByChangeManagementGroupId(group.getId());\r
+            List<ChangeManagementSchedule> schedules = cmScheduleDAO.findByChangeManagementGroupId(group.getUuid());\r
             for (ChangeManagementSchedule schedule : schedules) {\r
                 schedule.setStatus(approvalrejected.toString());\r
                 cmScheduleDAO.save(schedule);\r
@@ -603,7 +610,7 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
                         DomainsEnum.ChangeManagement.toString(), scheduleId);\r
             }\r
             Iterator<ChangeManagementDetail> iter = list.iterator();\r
-            Map<Integer, Schedule> scheduleMap = new HashMap<Integer, Schedule>();\r
+            Map<UUID, Schedule> scheduleMap = new HashMap<UUID, Schedule>();\r
             while (iter.hasNext()) {\r
                 ChangeManagementDetail cms = iter.next();\r
                 CmDetailsMessage msg = buildResponse(cms, scheduleMap);\r
@@ -636,7 +643,7 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
 \r
     }\r
 \r
-    private CmDetailsMessage buildResponse(ChangeManagementDetail cms, Map<Integer, Schedule> scheduleMap) {\r
+    private CmDetailsMessage buildResponse(ChangeManagementDetail cms, Map<UUID, Schedule> scheduleMap) {\r
         CmDetailsMessage msg = new CmDetailsMessage();\r
         msg.setVnfId(cms.getVnfId());\r
         msg.setVnfName(cms.getVnfName());\r
@@ -656,17 +663,17 @@ public class CMSOServiceImpl extends BaseSchedulerServiceImpl implements CMSOSer
         msg.setMsoRequestId(cms.getMsoRequestId());\r
         msg.setMsoStatus(cms.getMsoStatus());\r
         msg.setMsoTimeMillis(cms.getMsoTimeMillis());\r
-        if (!scheduleMap.containsKey(cms.getSchedulesId())) {\r
-            Schedule schedule = scheduleDAO.findById(cms.getSchedulesId()).orElse(null);\r
+        if (!scheduleMap.containsKey(cms.getSchedulesUuid())) {\r
+            Schedule schedule = scheduleDAO.findById(cms.getSchedulesUuid()).orElse(null);\r
             if (schedule != null) {\r
                 // DO not innclude in the results\r
                 schedule.setScheduleInfo(null);\r
                 // schedule.setSchedule(null);\r
-                scheduleMap.put(cms.getSchedulesId(), schedule);\r
+                scheduleMap.put(cms.getSchedulesUuid(), schedule);\r
             }\r
         }\r
-        if (scheduleMap.containsKey(cms.getSchedulesId())) {\r
-            msg.setScheduleRequest(scheduleMap.get(cms.getSchedulesId()));\r
+        if (scheduleMap.containsKey(cms.getSchedulesUuid())) {\r
+            msg.setScheduleRequest(scheduleMap.get(cms.getSchedulesUuid()));\r
         }\r
         return msg;\r
     }\r
index 1a9c29d..9877d33 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -43,188 +43,180 @@ import org.onap.optf.cmso.model.DomainData;
 \r
 public class CmQueryParameters {\r
 \r
-    public enum QueryColumns {\r
-        RequestScheduleId("request.scheduleId", String.class, "ss.schedule_id"), RequestScheduleName(\r
-                "request.scheduleName", String.class,\r
-                "ss.schedule_name"), RequestUserId("request.userId", String.class, "ss.user_id"), RequestStatus(\r
-                        "request.status", String.class, "ss.status"), RequestCreateDateTime("request.createDateTime",\r
-                                Date.class, "ss.create_date_time"), RequestOptimizerStatus("request.optimizerStatus",\r
-                                        String.class, "ss.optimizer_status"), RequestApprovalUserId(\r
-                                                "request.approvalUserId", String.class,\r
-                                                "sa.user_id"), RequestApprovalStatus("request.approvalStatus",\r
-                                                        String.class, "sa.status"), RequestApprovalType(\r
-                                                                "request.approvalType", String.class,\r
-                                                                "at.approval_type"), WorkflowName("WorkflowName",\r
-                                                                        DomainData.class,\r
-                                                                        "dd.value"), vnfName("vnfName", String.class,\r
-                                                                                "s.vnf_name"), vnfId("vnfId",\r
-                                                                                        String.class,\r
-                                                                                        "s.vnf_id"), vnfStatus(\r
-                                                                                                "vnfStatus",\r
-                                                                                                String.class,\r
-                                                                                                "s.vnf_status"),\r
-        // vnfScheduleId("vnfScheduleId", String.class, "s.id"),\r
-        startTime("startTime", Date.class, "s.start_time"), finishTime("finishTime", Date.class,\r
-                "s.finish_ime"), lastInstanceTime("lastInstanceTime", Date.class, "g.last_instance_time"), tmChangeId(\r
-                        "tmChangeId", String.class, "s.tm_change_id"), concurrenyLimit("request.concurrencyLimit",\r
-                                Integer.class, "g.concurrency_limit"),\r
-        // approvalUserId("approvalUserId", String.class, "approvalUserId"),\r
-        // approvalStatus("approvalStatus", String.class, "approvalStatus"),\r
-        // approvalType("approvalType", String.class, "approvalType"),\r
-        ;\r
+       public enum QueryColumns {\r
+               RequestScheduleId("request.scheduleId", String.class, "ss.schedule_id"),\r
+               RequestScheduleName("request.scheduleName", String.class, "ss.schedule_name"),\r
+               RequestUserId("request.userId", String.class, "ss.user_id"),\r
+               RequestStatus("request.status", String.class, "ss.status"),\r
+               RequestCreateDateTime("request.createDateTime", Date.class, "ss.create_date_time"),\r
+               RequestOptimizerStatus("request.optimizerStatus", String.class, "ss.optimizer_status"),\r
+               RequestApprovalUserId("request.approvalUserId", String.class, "sa.user_id"),\r
+               RequestApprovalStatus("request.approvalStatus", String.class, "sa.status"),\r
+               RequestApprovalType("request.approvalType", String.class, "at.approval_type"),\r
+               WorkflowName("WorkflowName", DomainData.class, "dd.value"), vnfName("vnfName", String.class, "s.vnf_name"),\r
+               vnfId("vnfId", String.class, "s.vnf_id"), vnfStatus("vnfStatus", String.class, "s.vnf_status"),\r
+               // vnfScheduleId("vnfScheduleId", String.class, "s.id"),\r
+               startTime("startTime", Date.class, "s.start_time"), finishTime("finishTime", Date.class, "s.finish_ime"),\r
+               lastInstanceTime("lastInstanceTime", Date.class, "g.last_instance_time"),\r
+               tmChangeId("tmChangeId", String.class, "s.tm_change_id"),\r
+               concurrenyLimit("request.concurrencyLimit", Integer.class, "g.concurrency_limit"),\r
+               // approvalUserId("approvalUserId", String.class, "approvalUserId"),\r
+               // approvalStatus("approvalStatus", String.class, "approvalStatus"),\r
+               // approvalType("approvalType", String.class, "approvalType"),\r
+               ;\r
 \r
-        private final String urlName;\r
-        private final Class<?> type;\r
-        private final String col;\r
+               private final String urlName;\r
+               private final Class<?> type;\r
+               private final String col;\r
 \r
-        private QueryColumns(String urlName, Class<?> type, String col) {\r
-            this.urlName = urlName;\r
-            this.type = type;\r
-            this.col = col;\r
-        }\r
+               private QueryColumns(String urlName, Class<?> type, String col) {\r
+                       this.urlName = urlName;\r
+                       this.type = type;\r
+                       this.col = col;\r
+               }\r
 \r
-    }\r
+       }\r
 \r
-    public static QueryColumns getQueryColumn(String urlName) {\r
-        for (QueryColumns qc : QueryColumns.values()) {\r
-            if (qc.urlName.equals(urlName))\r
-                return qc;\r
-        }\r
-        return null;\r
-    }\r
+       public static QueryColumns getQueryColumn(String urlName) {\r
+               for (QueryColumns qc : QueryColumns.values()) {\r
+                       if (qc.urlName.equals(urlName))\r
+                               return qc;\r
+               }\r
+               return null;\r
+       }\r
 \r
-    public static String buildClause(String urlName, List<String> values) throws CMSException {\r
-        QueryColumns qc = getQueryColumn(urlName);\r
-        if (qc == null) {\r
-            throw new CMSException(Status.BAD_REQUEST, LogMessages.UNDEFINED_FILTER_ATTRIBUTE, urlName);\r
-        }\r
-        if (qc.type == Date.class) {\r
-            return formatDate(urlName, values, qc);\r
-        }\r
-        if (qc.type == DomainData.class) {\r
-            return formatDomainData(urlName, values, qc);\r
-        }\r
-        return formatString(urlName, values, qc);\r
-    }\r
+       public static String buildClause(String urlName, List<String> values) throws CMSException {\r
+               QueryColumns qc = getQueryColumn(urlName);\r
+               if (qc == null) {\r
+                       throw new CMSException(Status.BAD_REQUEST, LogMessages.UNDEFINED_FILTER_ATTRIBUTE, urlName);\r
+               }\r
+               if (qc.type == Date.class) {\r
+                       return formatDate(urlName, values, qc);\r
+               }\r
+               if (qc.type == DomainData.class) {\r
+                       return formatDomainData(urlName, values, qc);\r
+               }\r
+               return formatString(urlName, values, qc);\r
+       }\r
 \r
-    private static String formatString(String urlName, List<String> values, QueryColumns qc) {\r
-        StringBuilder clause = new StringBuilder();\r
-        List<String> likes = new ArrayList<String>();\r
-        List<String> in = new ArrayList<String>();\r
-        for (String value : values) {\r
-            if (value.contains("%"))\r
-                likes.add(value);\r
-            else\r
-                in.add(value);\r
-        }\r
-        String delim = "(";\r
-        if (in.size() > 0) {\r
-            clause.append(delim).append(qc.col).append(" in ('");\r
-            String inDelim = "";\r
-            for (String value : in) {\r
-                clause.append(inDelim).append(value).append("'");\r
-                inDelim = ", '";\r
-            }\r
-            clause.append(") ");\r
-            delim = " OR ";\r
-        }\r
-        if (likes.size() > 0) {\r
-            for (String value : likes) {\r
-                clause.append(delim).append(qc.col).append(" like '").append(value).append("'");\r
-                delim = " OR ";\r
-            }\r
-        }\r
-        if (!delim.equals("("))\r
-            clause.append(")");\r
-        return clause.toString();\r
-    }\r
+       private static String formatString(String urlName, List<String> values, QueryColumns qc) {\r
+               StringBuilder clause = new StringBuilder();\r
+               List<String> likes = new ArrayList<String>();\r
+               List<String> in = new ArrayList<String>();\r
+               for (String value : values) {\r
+                       if (value.contains("%"))\r
+                               likes.add(value);\r
+                       else\r
+                               in.add(value);\r
+               }\r
+               String delim = "(";\r
+               if (in.size() > 0) {\r
+                       clause.append(delim).append(qc.col).append(" in ('");\r
+                       String inDelim = "";\r
+                       for (String value : in) {\r
+                               clause.append(inDelim).append(value).append("'");\r
+                               inDelim = ", '";\r
+                       }\r
+                       clause.append(") ");\r
+                       delim = " OR ";\r
+               }\r
+               if (likes.size() > 0) {\r
+                       for (String value : likes) {\r
+                               clause.append(delim).append(qc.col).append(" like '").append(value).append("'");\r
+                               delim = " OR ";\r
+                       }\r
+               }\r
+               if (!delim.equals("("))\r
+                       clause.append(")");\r
+               return clause.toString();\r
+       }\r
 \r
-    private static String formatDomainData(String urlName, List<String> values, QueryColumns qc) {\r
-        StringBuilder clause = new StringBuilder();\r
-        String delim = "(";\r
-        if (values.size() > 0) {\r
-            for (String value : values) {\r
-                clause.append(delim).append(" (dd.name = '").append(qc.urlName).append("' AND dd.value = '")\r
-                        .append(value).append("')");\r
-                delim = " OR ";\r
-            }\r
-        }\r
-        if (!delim.equals("("))\r
-            clause.append(")");\r
-        return clause.toString();\r
-    }\r
+       private static String formatDomainData(String urlName, List<String> values, QueryColumns qc) {\r
+               StringBuilder clause = new StringBuilder();\r
+               String delim = "(";\r
+               if (values.size() > 0) {\r
+                       for (String value : values) {\r
+                               clause.append(delim).append(" (dd.name = '").append(qc.urlName).append("' AND dd.value = '")\r
+                                               .append(value).append("')");\r
+                               delim = " OR ";\r
+                       }\r
+               }\r
+               if (!delim.equals("("))\r
+                       clause.append(")");\r
+               return clause.toString();\r
+       }\r
 \r
-    private static String formatDate(String urlName, List<String> values, QueryColumns qc) throws CMSException {\r
-        List<String> clauses = new ArrayList<String>();\r
-        for (String value : values) {\r
-            String dates[] = value.split(",");\r
-            switch (dates.length) {\r
-                case 2:\r
-                    formatDatePair(qc, dates[0].trim(), dates[1].trim(), clauses);\r
-                    break;\r
-                case 1:\r
-                    formatDatePair(qc, dates[0].trim(), "", clauses);\r
-                    break;\r
-                default:\r
-                    throw new CMSException(Status.BAD_REQUEST, LogMessages.INVALID_DATE_FILTER, urlName, value);\r
-            }\r
-        }\r
-        StringBuilder clause = new StringBuilder();\r
-        String delim = "(";\r
-        for (String c : clauses) {\r
-            clause.append(delim).append(c);\r
-            delim = " OR ";\r
-        }\r
-        if (!delim.equals(")")) {\r
-            clause.append(")");\r
-        }\r
-        return clause.toString();\r
-    }\r
+       private static String formatDate(String urlName, List<String> values, QueryColumns qc) throws CMSException {\r
+               List<String> clauses = new ArrayList<String>();\r
+               for (String value : values) {\r
+                       String dates[] = value.split(",");\r
+                       switch (dates.length) {\r
+                       case 2:\r
+                               formatDatePair(qc, dates[0].trim(), dates[1].trim(), clauses);\r
+                               break;\r
+                       case 1:\r
+                               formatDatePair(qc, dates[0].trim(), "", clauses);\r
+                               break;\r
+                       default:\r
+                               throw new CMSException(Status.BAD_REQUEST, LogMessages.INVALID_DATE_FILTER, urlName, value);\r
+                       }\r
+               }\r
+               StringBuilder clause = new StringBuilder();\r
+               String delim = "(";\r
+               for (String c : clauses) {\r
+                       clause.append(delim).append(c);\r
+                       delim = " OR ";\r
+               }\r
+               if (!delim.equals(")")) {\r
+                       clause.append(")");\r
+               }\r
+               return clause.toString();\r
+       }\r
 \r
-    private static void formatDatePair(QueryColumns qc, String lowDate, String highDate, List<String> clauses)\r
-            throws CMSException {\r
-        StringBuilder clause = new StringBuilder();\r
-        DateTime date1 = null;\r
-        DateTime date2 = null;\r
-        if (!lowDate.equals(""))\r
-            date1 = convertDate(lowDate, qc.urlName);\r
-        if (!highDate.equals(""))\r
-            date2 = convertDate(highDate, qc.urlName);\r
-        String delim = "(";\r
-        if (date1 != null) {\r
-            clause.append(delim).append(qc.col).append(" >= ").append(date1.getMillis());\r
-            delim = " AND ";\r
-        }\r
-        if (date2 != null) {\r
-            clause.append(delim).append(qc.col).append(" <= ").append(date2.getMillis());\r
-            delim = " AND ";\r
-        }\r
-        if (!delim.equals(")")) {\r
-            clause.append(")\n");\r
-            clauses.add(clause.toString());\r
-        }\r
-    }\r
+       private static void formatDatePair(QueryColumns qc, String lowDate, String highDate, List<String> clauses)\r
+                       throws CMSException {\r
+               StringBuilder clause = new StringBuilder();\r
+               DateTime date1 = null;\r
+               DateTime date2 = null;\r
+               if (!lowDate.equals(""))\r
+                       date1 = convertDate(lowDate, qc.urlName);\r
+               if (!highDate.equals(""))\r
+                       date2 = convertDate(highDate, qc.urlName);\r
+               String delim = "(";\r
+               if (date1 != null) {\r
+                       clause.append(delim).append(qc.col).append(" >= ").append(date1.getMillis());\r
+                       delim = " AND ";\r
+               }\r
+               if (date2 != null) {\r
+                       clause.append(delim).append(qc.col).append(" <= ").append(date2.getMillis());\r
+                       delim = " AND ";\r
+               }\r
+               if (!delim.equals(")")) {\r
+                       clause.append(")\n");\r
+                       clauses.add(clause.toString());\r
+               }\r
+       }\r
 \r
-    private static DateTime convertDate(String utcDate, String urlName) throws CMSException {\r
-        DateTime dateTime = ISODateTimeFormat.dateTimeParser().parseDateTime(utcDate);\r
-        if (dateTime != null)\r
-            return dateTime;\r
-        throw new CMSException(Status.BAD_REQUEST, LogMessages.INVALID_DATE_FILTER, urlName, utcDate);\r
-    }\r
+       private static DateTime convertDate(String utcDate, String urlName) throws CMSException {\r
+               DateTime dateTime = ISODateTimeFormat.dateTimeParser().parseDateTime(utcDate);\r
+               if (dateTime != null)\r
+                       return dateTime;\r
+               throw new CMSException(Status.BAD_REQUEST, LogMessages.INVALID_DATE_FILTER, urlName, utcDate);\r
+       }\r
 \r
-    // public static void main(String argv[])\r
-    // {\r
-    // List<String> values = new ArrayList<String>();\r
-    // values.add("2017-07-08T11:12:13Z,2017-07-08T11:12:13Z");\r
-    // values.add("2017-07-09T11:12:13Z,2017-07-09T11:12:13Z");\r
-    // values.add(",2017-07-09T11:12:13Z");\r
-    // values.add(" 2017-07-09T11:12:13Z");\r
-    // try {\r
-    // System.out.println(buildClause("request.createDateTime", values));\r
-    // } catch (SchedulerException e) {\r
-    // // TODO Auto-generated catch block\r
-    // e.printStackTrace();\r
-    // }\r
-    //\r
-    // }\r
+       // public static void main(String argv[])\r
+       // {\r
+       // List<String> values = new ArrayList<String>();\r
+       // values.add("2017-07-08T11:12:13Z,2017-07-08T11:12:13Z");\r
+       // values.add("2017-07-09T11:12:13Z,2017-07-09T11:12:13Z");\r
+       // values.add(",2017-07-09T11:12:13Z");\r
+       // values.add(" 2017-07-09T11:12:13Z");\r
+       // try {\r
+       // System.out.println(buildClause("request.createDateTime", values));\r
+       // } catch (SchedulerException e) {\r
+       // // TODO Auto-generated catch block\r
+       // e.printStackTrace();\r
+       // }\r
+       //\r
+       // }\r
 }\r
index 7a7821e..41534f8 100644 (file)
@@ -34,6 +34,7 @@ package org.onap.optf.cmso.sostatus;
 import java.text.SimpleDateFormat;\r
 import java.util.Date;\r
 import java.util.Map;\r
+import java.util.UUID;\r
 \r
 import javax.ws.rs.ProcessingException;\r
 import javax.ws.rs.client.Client;\r
@@ -87,10 +88,11 @@ public class MsoStatusClient {
     @Autowired\r
     PropertiesManagement pm;\r
 \r
-    public void execute(Integer id) throws JobExecutionException {\r
+    public void execute(String id) throws JobExecutionException {\r
         debug.debug(LogMessages.MSO_STATUS_JOB, "Entered", id.toString());\r
         try {\r
-            ChangeManagementSchedule cmSchedule = cmScheduleDAO.lockOne(id);\r
+               UUID uuid = UUID.fromString(id);\r
+            ChangeManagementSchedule cmSchedule = cmScheduleDAO.lockOne(uuid);\r
             if (cmSchedule == null) {\r
                 Observation.report(LogMessages.MSO_POLLING_MISSING_SCHEDULE, id.toString());\r
                 return;\r
index df9f361..6c52cc3 100644 (file)
@@ -31,6 +31,8 @@
 \r
 package org.onap.optf.cmso.sostatus;\r
 \r
+import java.util.UUID;\r
+\r
 import org.onap.observations.Mdc;\r
 import org.onap.optf.cmso.common.LogMessages;\r
 import org.onap.optf.cmso.model.ChangeManagementSchedule;\r
@@ -73,20 +75,21 @@ public class MsoStatusJob implements Job {
     @Override\r
     public void execute(JobExecutionContext context) throws JobExecutionException {\r
         Mdc.quartzJobBegin(context);\r
-        Integer id = context.getJobDetail().getJobDataMap().getInt(ContextKeys.scheduleId.toString());\r
+        String id = context.getJobDetail().getJobDataMap().getString(ContextKeys.scheduleId.toString());\r
         String requestId = context.getJobDetail().getJobDataMap().getString(ContextKeys.msoRequestId.toString());\r
         debug.debug(LogMessages.MSO_STATUS_JOB, "Entered", requestId, id.toString());\r
         try {\r
-            ChangeManagementSchedule cmSchedule = cmScheduleDAO.findById(id).orElse(null);\r
+               UUID uuid = UUID.fromString(id);\r
+            ChangeManagementSchedule cmSchedule = cmScheduleDAO.findById(uuid).orElse(null);\r
             if (cmSchedule == null) {\r
-                log.warn(LogMessages.MSO_POLLING_MISSING_SCHEDULE, id.toString(), requestId);\r
+                log.warn(LogMessages.MSO_POLLING_MISSING_SCHEDULE, id, requestId);\r
                 return;\r
             }\r
             mso.poll(cmSchedule);\r
         } catch (Exception e) {\r
             errors.error(LogMessages.UNEXPECTED_EXCEPTION, e, e.getMessage());\r
         }\r
-        debug.debug(LogMessages.MSO_STATUS_JOB, "Exited", requestId, id.toString());\r
+        debug.debug(LogMessages.MSO_STATUS_JOB, "Exited", requestId, id);\r
     }\r
 \r
 }\r
index c3254aa..1c3677c 100644 (file)
@@ -33,6 +33,7 @@ package org.onap.optf.cmso.sostatus;
 \r
 import java.util.List;\r
 import java.util.Map;\r
+import java.util.UUID;\r
 \r
 import javax.ws.rs.client.Client;\r
 import javax.ws.rs.client.ClientBuilder;\r
@@ -93,8 +94,8 @@ public class ScheduleStatusJob implements Job {
             // First poll SO for WF status\r
             List<ChangeManagementSchedule> list = cmScheduleDAO.findAllTriggered();\r
             for (ChangeManagementSchedule s : list) {\r
-                debug.debug("Dispathcing to check status of CM schedule Id=" + s.getId());\r
-                dispatchMso(s.getId());\r
+                debug.debug("Dispathcing to check status of CM schedule Id=" + s.getUuid());\r
+                dispatchMso(s.getUuid());\r
             }\r
         } catch (Exception e) {\r
             Observation.report(LogMessages.UNEXPECTED_EXCEPTION, e, e.getMessage());\r
@@ -106,7 +107,7 @@ public class ScheduleStatusJob implements Job {
             List<Schedule> list = scheduleDAO.findAllInProgress(DomainsEnum.ChangeManagement.toString());\r
             for (Schedule s : list) {\r
                 debug.debug("Dispatching to check status of scheduleId=" + s.getScheduleId());\r
-                dispatchScheduleStatusChecker(s.getId());\r
+                dispatchScheduleStatusChecker(s.getUuid());\r
             }\r
         } catch (Exception e) {\r
             Observation.report(LogMessages.UNEXPECTED_EXCEPTION, e, e.getMessage());\r
@@ -114,12 +115,12 @@ public class ScheduleStatusJob implements Job {
         debug.debug(LogMessages.SCHEDULE_STATUS_JOB, "Exited");\r
     }\r
 \r
-    public void dispatchScheduleStatusChecker(Integer id) {\r
+    public void dispatchScheduleStatusChecker(UUID uuid) {\r
         Map<String, String> mdcSave = Mdc.save();\r
         try {\r
             String url = env.getProperty("cmso.dispatch.url", "http://localhost:8089");\r
             String path = env.getProperty("cmso.dispatch.status.path", "/cmso/dispatch/schedulestatus/");\r
-            url = url + path + id;\r
+            url = url + path + uuid;\r
             String user = env.getProperty("mechid.user", "");\r
             String pass = pm.getProperty("mechid.pass", "");\r
             Client client = ClientBuilder.newClient();\r
@@ -152,12 +153,12 @@ public class ScheduleStatusJob implements Job {
 \r
     }\r
 \r
-    public void dispatchMso(Integer id) {\r
+    public void dispatchMso(UUID uuid) {\r
         Map<String, String> mdcSave = Mdc.save();\r
         try {\r
             String url = env.getProperty("cmso.dispatch.url", "http://localhost:8089");\r
             String path = env.getProperty("cmso.dispatch.sostatus.path", "/cmso/dispatch/sostatus/");\r
-            url = url + path + id;\r
+            url = url + path + uuid;\r
             String user = env.getProperty("mechid.user", "");\r
             String pass = pm.getProperty("mechid.pass", "");\r
             Client client = ClientBuilder.newClient();\r
index e5c14b1..e327acc 100644 (file)
@@ -1,6 +1,6 @@
 /*\r
- * Copyright © 2017-2018 AT&T Intellectual Property.\r
- * Modifications Copyright © 2018 IBM.\r
+ * Copyright Â© 2017-2018 AT&T Intellectual Property.\r
+ * Modifications Copyright Â© 2018 IBM.\r
  * \r
  * Licensed under the Apache License, Version 2.0 (the "License");\r
  * you may not use this file except in compliance with the License.\r
@@ -37,6 +37,8 @@ import java.util.HashSet;
 import java.util.List;\r
 import java.util.Map;\r
 import java.util.Set;\r
+import java.util.UUID;\r
+\r
 import javax.transaction.Transactional;\r
 import org.onap.optf.cmso.common.CMSStatusEnum;\r
 import org.onap.optf.cmso.common.LogMessages;\r
@@ -97,11 +99,12 @@ public class TmStatusClient {
     TmClient tmClient;\r
 \r
     @Transactional\r
-    public void checkStatus(Integer id) {\r
+    public void checkStatus(String id) {\r
         debug.debug("Entered checkStatus id=" + id);\r
         try {\r
             // Multiple cmso instance support - re-get the record with a Schedule lock\r
-            Schedule s = scheduleDAO.lockOne(id);\r
+               UUID uuid = UUID.fromString(id);\r
+            Schedule s = scheduleDAO.lockOne(uuid);\r
             if (!s.getStatus().equals(CMSStatusEnum.NotificationsInitiated.toString())) {\r
                 debug.debug(s.getScheduleId() + " is no longer in " + CMSStatusEnum.NotificationsInitiated.toString()\r
                         + " : it is " + s.getStatus());\r
@@ -110,7 +113,7 @@ public class TmStatusClient {
             }\r
             Map<GroupAuditStatus, List<ChangeManagementGroup>> groupStatus =\r
                     new HashMap<GroupAuditStatus, List<ChangeManagementGroup>>();\r
-            List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(id);\r
+            List<ChangeManagementGroup> groups = cmGroupDAO.findBySchedulesID(uuid);\r
 \r
             // Close tickets for completed VNFs\r
             for (ChangeManagementGroup group : groups) {\r
@@ -155,7 +158,7 @@ public class TmStatusClient {
         Map<String, List<ChangeManagementSchedule>> inProgress = new HashMap<String, List<ChangeManagementSchedule>>();\r
         Map<String, List<ChangeManagementSchedule>> completed = new HashMap<String, List<ChangeManagementSchedule>>();\r
         Map<String, List<ChangeManagementSchedule>> tmClosed = new HashMap<String, List<ChangeManagementSchedule>>();\r
-        List<ChangeManagementSchedule> cmSchedules = cmScheduleDAO.findByChangeManagementGroupId(group.getId());\r
+        List<ChangeManagementSchedule> cmSchedules = cmScheduleDAO.findByChangeManagementGroupId(group.getUuid());\r
         for (ChangeManagementSchedule cmSchedule : cmSchedules) {\r
             String status = cmSchedule.getStatus();\r
             String changeId = cmSchedule.getTmChangeId();\r
@@ -230,7 +233,7 @@ public class TmStatusClient {
         Set<String> failedNames = new HashSet<String>();\r
         Set<String> completedNames = new HashSet<String>();\r
         Long startDate = group.getStartTimeMillis();\r
-        List<ChangeManagementSchedule> cmSchedules = cmScheduleDAO.findByChangeManagementGroupId(group.getId());\r
+        List<ChangeManagementSchedule> cmSchedules = cmScheduleDAO.findByChangeManagementGroupId(group.getUuid());\r
         for (ChangeManagementSchedule cmSchedule : cmSchedules) {\r
             String vnfName = cmSchedule.getVnfName();\r
             vnfNames.add(vnfName);\r