package edu.asu.spring.quadriga.mapper.workspace.impl; import java.util.ArrayList; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import edu.asu.spring.quadriga.dao.workbench.IRetrieveProjectDAO; import edu.asu.spring.quadriga.domain.dictionary.IDictionary; import edu.asu.spring.quadriga.domain.factory.workspace.IWorkspaceDictionaryFactory; import edu.asu.spring.quadriga.domain.workspace.IWorkSpace; import edu.asu.spring.quadriga.domain.workspace.IWorkspaceDictionary; import edu.asu.spring.quadriga.dto.DictionaryDTO; import edu.asu.spring.quadriga.dto.WorkspaceDTO; import edu.asu.spring.quadriga.dto.WorkspaceDictionaryDTO; import edu.asu.spring.quadriga.exceptions.QuadrigaStorageException; import edu.asu.spring.quadriga.mapper.workspace.IWorkspaceDictionaryShallowMapper; import edu.asu.spring.quadriga.mapper.workspace.IWorkspaceShallowMapper; import edu.asu.spring.quadriga.service.dictionary.IDictionaryManager; import edu.asu.spring.quadriga.service.dictionary.mapper.IDictionaryShallowMapper; @Service public class WorkspaceDictionaryShallowMapper implements IWorkspaceDictionaryShallowMapper { @Autowired private IRetrieveProjectDAO dbConnect; @Autowired private IDictionaryManager dictionaryManager; @Autowired private IDictionaryShallowMapper dictionaryShallowMapper; @Autowired private IWorkspaceShallowMapper workspaceShallowMapper; @Autowired private IWorkspaceDictionaryFactory wsDictionaryFactory; @Override public List<IWorkspaceDictionary> getWorkspaceDictionaryList( IWorkSpace workspace, WorkspaceDTO workspaceDTO) throws QuadrigaStorageException { List<IWorkspaceDictionary> workspaceDictionaryList = null; if(workspace != null){ workspaceDictionaryList = new ArrayList<IWorkspaceDictionary>(); List<WorkspaceDictionaryDTO> wsDictionaryDTOList = workspaceDTO.getWorkspaceDictionaryDTOList(); if(wsDictionaryDTOList != null){ for(WorkspaceDictionaryDTO wsDictionaryDTO : wsDictionaryDTOList){ IDictionary dictionaryProxy = dictionaryShallowMapper.getDictionaryDetails(wsDictionaryDTO.getDictionaryDTO()); IWorkspaceDictionary wsDictioanry = wsDictionaryFactory.createWorkspaceDictionaryObject(); wsDictioanry.setWorkspace(workspace); wsDictioanry.setDictionary(dictionaryProxy); wsDictioanry.setCreatedBy(wsDictionaryDTO.getCreatedby()); wsDictioanry.setCreatedDate(wsDictionaryDTO.getCreateddate()); wsDictioanry.setUpdatedBy(wsDictionaryDTO.getUpdatedby()); wsDictioanry.setUpdatedDate(wsDictionaryDTO.getUpdateddate()); workspaceDictionaryList.add(wsDictioanry); } } } return workspaceDictionaryList; } @Override public List<IWorkspaceDictionary> getWorkspaceDictionaryList( IDictionary dictionary, DictionaryDTO dictionaryDTO) throws QuadrigaStorageException { List<IWorkspaceDictionary> workspaceDictionaryList = null; List<WorkspaceDictionaryDTO> workspaceDictionaryDTOList = dictionaryDTO.getWsDictionaryDTOList(); if(workspaceDictionaryDTOList != null){ for( WorkspaceDictionaryDTO workspaceDictionaryDTO : workspaceDictionaryDTOList){ if(workspaceDictionaryList == null){ workspaceDictionaryList = new ArrayList<IWorkspaceDictionary>(); } IWorkSpace workspace = workspaceShallowMapper.mapWorkspaceDTO(workspaceDictionaryDTO.getWorkspaceDTO()); IWorkspaceDictionary wsDictioanry = wsDictionaryFactory.createWorkspaceDictionaryObject(); wsDictioanry.setWorkspace(workspace); wsDictioanry.setDictionary(dictionary); wsDictioanry.setCreatedBy(workspaceDictionaryDTO.getCreatedby()); wsDictioanry.setCreatedDate(workspaceDictionaryDTO.getCreateddate()); wsDictioanry.setUpdatedBy(workspaceDictionaryDTO.getUpdatedby()); wsDictioanry.setUpdatedDate(workspaceDictionaryDTO.getUpdateddate()); workspaceDictionaryList.add(wsDictioanry); } } return workspaceDictionaryList; } }