From 7f535078ef80a7b7efa3e3325bfccb994fbd00e8 Mon Sep 17 00:00:00 2001 From: "Christopher Lott (cl778h)" Date: Thu, 31 Aug 2017 15:16:38 -0400 Subject: Rename packages to org.onap in 1.4.0-SNAPSHOT 19 - remove openecomp 72 - remediate Sonar scan issues 79 - removed unwanted left menu under Report 90 - apply approved license text Issue: PORTAL-19, PORTAL-72, PORTAL-79, PORTAL-90 Change-Id: I41a0ef5fba623d2242574bd15f2d9fb8029a496c Signed-off-by: Christopher Lott (cl778h) --- .../onap/portalsdk/workflow/dao/WorkflowDAO.java | 50 ++++++++ .../portalsdk/workflow/dao/WorkflowDAOImpl.java | 127 +++++++++++++++++++++ 2 files changed, 177 insertions(+) create mode 100644 ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAO.java create mode 100644 ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAOImpl.java (limited to 'ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao') diff --git a/ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAO.java b/ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAO.java new file mode 100644 index 00000000..cb7b27a3 --- /dev/null +++ b/ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAO.java @@ -0,0 +1,50 @@ +/* + * ============LICENSE_START========================================== + * ONAP Portal SDK + * =================================================================== + * Copyright © 2017 AT&T Intellectual Property. All rights reserved. + * =================================================================== + * + * Unless otherwise specified, all software contained herein is licensed + * under the Apache License, Version 2.0 (the “License”); + * you may not use this software except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * Unless otherwise specified, all documentation contained herein is licensed + * under the Creative Commons License, Attribution 4.0 Intl. (the “License”); + * you may not use this documentation except in compliance with the License. + * You may obtain a copy of the License at + * + * https://creativecommons.org/licenses/by/4.0/ + * + * Unless required by applicable law or agreed to in writing, documentation + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ============LICENSE_END============================================ + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ +package org.onap.portalsdk.workflow.dao; + +import java.util.List; + +import org.onap.portalsdk.workflow.models.Workflow; +import org.onap.portalsdk.workflow.models.WorkflowLite; + +public interface WorkflowDAO { + public List getWorkflows(); + public Workflow save(Workflow workflow, String creatorId); + public Workflow edit(WorkflowLite workflow, String creatorId); + public void delete(Long workflow); +} diff --git a/ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAOImpl.java b/ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAOImpl.java new file mode 100644 index 00000000..8fdb64fc --- /dev/null +++ b/ecomp-sdk/epsdk-workflow/src/main/java/org/onap/portalsdk/workflow/dao/WorkflowDAOImpl.java @@ -0,0 +1,127 @@ +/* + * ============LICENSE_START========================================== + * ONAP Portal SDK + * =================================================================== + * Copyright © 2017 AT&T Intellectual Property. All rights reserved. + * =================================================================== + * + * Unless otherwise specified, all software contained herein is licensed + * under the Apache License, Version 2.0 (the “License”); + * you may not use this software except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * Unless otherwise specified, all documentation contained herein is licensed + * under the Creative Commons License, Attribution 4.0 Intl. (the “License”); + * you may not use this documentation except in compliance with the License. + * You may obtain a copy of the License at + * + * https://creativecommons.org/licenses/by/4.0/ + * + * Unless required by applicable law or agreed to in writing, documentation + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ============LICENSE_END============================================ + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ +package org.onap.portalsdk.workflow.dao; + +import java.util.Date; +import java.util.List; + +import org.hibernate.Query; +import org.hibernate.Session; +import org.hibernate.SessionFactory; +import org.hibernate.Transaction; +import org.onap.portalsdk.core.domain.User; +import org.onap.portalsdk.workflow.models.Workflow; +import org.onap.portalsdk.workflow.models.WorkflowLite; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Repository; +@Repository +public class WorkflowDAOImpl implements WorkflowDAO{ + + @Autowired + private SessionFactory sessionFactory; + + public Workflow save(Workflow workflow, String creatorId){ + Session session = this.sessionFactory.openSession(); + Transaction tx = session.beginTransaction(); + + try{ + Query query = session.createQuery("from User where loginId =:loginId"); + query.setParameter("loginId", creatorId); + User creator = (User)(query.list().get(0)); + + workflow.setCreatedBy(creator); + workflow.setCreated(new Date()); + } + catch(Exception e){ + e.printStackTrace(); + } + + long id = (Long) session.save(workflow); + Workflow savedWorkflow = (Workflow) session.get(Workflow.class, id); + tx.commit(); + session.close(); + return savedWorkflow; + } + + public List getWorkflows(){ + Session session = this.sessionFactory.openSession(); + @SuppressWarnings("unchecked") + List workflows = session.createQuery("from Workflow").list(); + session.close(); + return workflows; + } + + @Override + public void delete(Long workflowId) { + Session session = this.sessionFactory.openSession(); + Transaction tx = session.beginTransaction(); + Query query = session.createQuery("delete from Workflow where id =:id"); + query.setParameter("id", workflowId); + query.executeUpdate(); + tx.commit(); + session.close(); + } + + @Override + public Workflow edit(WorkflowLite workflowLight, String creatorId) { + Session session = this.sessionFactory.openSession(); + Transaction tx = session.beginTransaction(); + + Query query = session.createQuery("from User where loginId =:loginId"); + query.setParameter("loginId", creatorId); + User creator = (User)(query.list().get(0)); + + Workflow workflowToModify = (Workflow) session.get(Workflow.class, workflowLight.getId()); + + workflowToModify.setActive(workflowLight.getActive().equalsIgnoreCase("true") ? true : false ); + workflowToModify.setSuspendLink(workflowLight.getSuspendLink()); + workflowToModify.setRunLink(workflowLight.getRunLink()); + workflowToModify.setDescription(workflowLight.getDescription()); + workflowToModify.setWorkflowKey(workflowLight.getWorkflowKey()); + workflowToModify.setName(workflowLight.getName()); + + workflowToModify.setModifiedBy(creator); + workflowToModify.setLastUpdated(new Date()); + + session.update(workflowToModify); + Workflow savedWorkflow = (Workflow) session.get(Workflow.class, workflowLight.getId()); + tx.commit(); + session.close(); + return savedWorkflow; + } +} -- cgit 1.2.3-korg