Package clips.delegate.directory.complex

Source Code of clips.delegate.directory.complex.DirectoryPacketTemplateItem

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package clips.delegate.directory.complex;

import cli_fmw.delegate.directory.DirectoryItemRO;
import cli_fmw.delegate.directory.complex.*;
import beans.directory.packet.entity.PacketTemplateDetails;
import cli_fmw.delegate.directory.DirectoryItem;
import cli_fmw.delegate.directory.simple.DirectorySimpleItem;
import cli_fmw.main.ClipsException;
import clips.delegate.directory.ro.DirectoryLpu;
import clips.delegate.directory.ro.DirectoryLpuItem;
import clips.delegate.directory.simple.medexam.DirectoryMedexamType;
import clips.delegate.directory.simple.medexam.DirectoryMedexamTypeItem;
import java.util.ArrayList;
import java.util.List;


/**
*
* @author lacoste
*/
public class DirectoryPacketTemplateItem
    extends DirectoryItem<PacketTemplateDetails> {
   
    protected List<DirectoryPacketTemplateListItem> packetItems
        = new ArrayList<DirectoryPacketTemplateListItem>();   

    public DirectoryPacketTemplateItem(PacketTemplateDetails details) {
        super(details);
    }
   
    public int getPacketItemCount() throws ClipsException {
        //preload packet items
        DirectoryLocator.getDirectory(DirectoryPacketTemplateList.class, false);
        return packetItems.size();
    }

    public DirectoryPacketTemplateListItem getPacketItem(int i) {
        DirectoryPacketTemplateListItem pi = packetItems.get(i);
        return pi;
    }

    void addPacketItem(DirectoryPacketTemplateListItem packetItem) throws ClipsException {
        if(!packetItems.contains(packetItem)) {
            packetItems.add(packetItem);
        }
    }

    void removePacketItem(DirectoryPacketTemplateListItem packetItem) {
        packetItems.remove(packetItem);
    }

    public DirectorySimpleItem getmedexamType() throws ClipsException {
        DirectoryMedexamType directory = DirectoryLocator.getDirectory(DirectoryMedexamType.class);
        return directory.getItemFromID(getDetails().medexamTypeID);
    }

    public void setmedexamType(DirectoryMedexamTypeItem type) throws ClipsException {
       if(isInDirectory()) {
            PacketTemplateDetails newDetails = getDetailsCopy();
            newDetails.medexamTypeID = type.getID();
            saveDetails(newDetails);
        } else {
            getDetails().medexamTypeID = type.getID();
        }
    }

    @Override
    public int compareTo(DirectoryItemRO item) {
        DirectoryPacketTemplateItem other = (DirectoryPacketTemplateItem) item;
        if (getID() == 0) {
            return -1;
        } else {
            try {
                Integer thisTypeID = this.getmedexamType().getID();
                Integer otherTypeID = other.getmedexamType().getID();
                if (thisTypeID == otherTypeID) {
                    return super.compareTo(item);
                } else {
                    return thisTypeID.compareTo(otherTypeID);
                }
            } catch (ClipsException ex) {
                return super.compareTo(item);
            }
        }
    }

    DirectoryLpuItem getLpu() throws ClipsException{
        if (getDetails().lpuID == 0){
            return null;
        }else{
            return DirectoryLocator.getDirectory(DirectoryLpu.class).getItemFromID(getDetails().lpuID);
        }
    }

}
TOP

Related Classes of clips.delegate.directory.complex.DirectoryPacketTemplateItem

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.