org.kuali.student.lum.program.service.assembler
Class MajorDisciplineAssembler

java.lang.Object
  extended by org.kuali.student.lum.program.service.assembler.MajorDisciplineAssembler
All Implemented Interfaces:
BOAssembler<MajorDisciplineInfo,CluInfo>

public class MajorDisciplineAssembler
extends Object
implements BOAssembler<MajorDisciplineInfo,CluInfo>

Author:
KS TODO - Much of this should be shared with ProgramVariationAssembler (and probably other Program Assemblers to come). AssemblerUtils?

Field Summary
private  CluAssemblerUtils cluAssemblerUtils
           
private  CoreProgramAssembler coreProgramAssembler
           
(package private) static Logger LOG
           
private  LuService luService
           
private  ProgramAssemblerUtils programAssemblerUtils
           
private  ProgramVariationAssembler programVariationAssembler
           
 
Constructor Summary
MajorDisciplineAssembler()
           
 
Method Summary
private  void addInactivateVariationNodes(Map<String,CluCluRelationInfo> currentRelations, List<BaseDTOAssemblyNode<?,?>> nodes)
           
 MajorDisciplineInfo assemble(CluInfo clu, MajorDisciplineInfo majorDiscipline, boolean shallowBuild)
          This method assembles the business DTO from its base DTO.
private  CoreProgramInfo assembleCoreProgram(String cluId, boolean shallowBuild)
           
private  List<ProgramVariationInfo> assembleVariations(String cluId, boolean shallowBuild)
           
 BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> disassemble(MajorDisciplineInfo major, BaseDTOAssemblyNode.NodeOperation operation)
          This method returns a collection of base DTOs and the operations that need to be performed on them in a given order
private  void disassembleCoreProgram(MajorDisciplineInfo major, BaseDTOAssemblyNode.NodeOperation operation, BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
           
private  void disassembleCredentialProgram(MajorDisciplineInfo major, BaseDTOAssemblyNode.NodeOperation operation, BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
           
private  void disassembleLearningObjectives(MajorDisciplineInfo major, BaseDTOAssemblyNode.NodeOperation operation, BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
           
private  void disassembleResultOptions(MajorDisciplineInfo major, BaseDTOAssemblyNode.NodeOperation operation, BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
           
private  void disassembleVariations(MajorDisciplineInfo major, BaseDTOAssemblyNode.NodeOperation operation, BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
           
 ProgramVariationAssembler getProgramVariationAssembler()
           
 void setCluAssemblerUtils(CluAssemblerUtils cluAssemblerUtils)
           
 void setCoreProgramAssembler(CoreProgramAssembler coreProgramAssembler)
           
 void setLuService(LuService luService)
           
 void setProgramAssemblerUtils(ProgramAssemblerUtils programAssemblerUtils)
           
 void setProgramVariationAssembler(ProgramVariationAssembler programVariationAssembler)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG

static final Logger LOG

luService

private LuService luService

programVariationAssembler

private ProgramVariationAssembler programVariationAssembler

coreProgramAssembler

private CoreProgramAssembler coreProgramAssembler

cluAssemblerUtils

private CluAssemblerUtils cluAssemblerUtils

programAssemblerUtils

private ProgramAssemblerUtils programAssemblerUtils
Constructor Detail

MajorDisciplineAssembler

public MajorDisciplineAssembler()
Method Detail

assemble

public MajorDisciplineInfo assemble(CluInfo clu,
                                    MajorDisciplineInfo majorDiscipline,
                                    boolean shallowBuild)
                             throws AssemblyException
Description copied from interface: BOAssembler
This method assembles the business DTO from its base DTO.

Specified by:
assemble in interface BOAssembler<MajorDisciplineInfo,CluInfo>
Parameters:
clu - Base DTO that corresponds to the business DTO
majorDiscipline - Reference to Business DTO
shallowBuild - boolean flag to indicate if the assembly should be shallow or deep
Returns:
Assembled business DTO
Throws:
AssemblyException

assembleCoreProgram

private CoreProgramInfo assembleCoreProgram(String cluId,
                                            boolean shallowBuild)
                                     throws AssemblyException
Throws:
AssemblyException

assembleVariations

private List<ProgramVariationInfo> assembleVariations(String cluId,
                                                      boolean shallowBuild)
                                               throws AssemblyException
Throws:
AssemblyException

disassemble

public BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> disassemble(MajorDisciplineInfo major,
                                                                    BaseDTOAssemblyNode.NodeOperation operation)
                                                             throws AssemblyException
Description copied from interface: BOAssembler
This method returns a collection of base DTOs and the operations that need to be performed on them in a given order

Specified by:
disassemble in interface BOAssembler<MajorDisciplineInfo,CluInfo>
Parameters:
major - Business DTO to be disassembled
Returns:
A sorted map of BaseDTOAssemblyNodes to be processed in the given order. The key (Integer) is the sequence in which the nodes have to be processed
Throws:
AssemblyException

disassembleLearningObjectives

private void disassembleLearningObjectives(MajorDisciplineInfo major,
                                           BaseDTOAssemblyNode.NodeOperation operation,
                                           BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
                                    throws AssemblyException
Throws:
AssemblyException

disassembleResultOptions

private void disassembleResultOptions(MajorDisciplineInfo major,
                                      BaseDTOAssemblyNode.NodeOperation operation,
                                      BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
                               throws AssemblyException
Throws:
AssemblyException

disassembleCredentialProgram

private void disassembleCredentialProgram(MajorDisciplineInfo major,
                                          BaseDTOAssemblyNode.NodeOperation operation,
                                          BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
                                   throws AssemblyException
Throws:
AssemblyException

disassembleVariations

private void disassembleVariations(MajorDisciplineInfo major,
                                   BaseDTOAssemblyNode.NodeOperation operation,
                                   BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
                            throws AssemblyException,
                                   DoesNotExistException,
                                   InvalidParameterException,
                                   MissingParameterException,
                                   OperationFailedException
Throws:
AssemblyException
DoesNotExistException
InvalidParameterException
MissingParameterException
OperationFailedException

addInactivateVariationNodes

private void addInactivateVariationNodes(Map<String,CluCluRelationInfo> currentRelations,
                                         List<BaseDTOAssemblyNode<?,?>> nodes)
                                  throws AssemblyException
Throws:
AssemblyException

disassembleCoreProgram

private void disassembleCoreProgram(MajorDisciplineInfo major,
                                    BaseDTOAssemblyNode.NodeOperation operation,
                                    BaseDTOAssemblyNode<MajorDisciplineInfo,CluInfo> result)
                             throws AssemblyException
Throws:
AssemblyException

setLuService

public void setLuService(LuService luService)

setProgramVariationAssembler

public void setProgramVariationAssembler(ProgramVariationAssembler programVariationAssembler)

getProgramVariationAssembler

public ProgramVariationAssembler getProgramVariationAssembler()

setCoreProgramAssembler

public void setCoreProgramAssembler(CoreProgramAssembler coreProgramAssembler)

setCluAssemblerUtils

public void setCluAssemblerUtils(CluAssemblerUtils cluAssemblerUtils)

setProgramAssemblerUtils

public void setProgramAssemblerUtils(ProgramAssemblerUtils programAssemblerUtils)


Copyright © 2004-2011 The Kuali Foundation. All Rights Reserved.