package com.cim.idm.mwmsextend.transport.management;

import java.util.List;

import com.cim.idm.mwmsextend.transport.management.data.TransportCommand;
import com.cim.idm.mwmsextend.transport.management.data.TransportCommandKey;
import com.cim.idm.mwmsextend.transport.management.info.CreateInfo;
import com.cim.idm.mwmsextend.transport.management.info.SetEventInfo;
import com.cim.idm.framework.data.EventInfo;
import com.cim.idm.framework.exception.ext.DuplicateNameSignal;
import com.cim.idm.framework.exception.ext.FrameworkErrorSignal;
import com.cim.idm.framework.exception.ext.NotFoundSignal;
import com.cim.idm.framework.orm.service.CommonService;

public interface TransportCommandService extends CommonService<TransportCommandKey, TransportCommand>{
	
	public TransportCommand create(EventInfo eventInfo, CreateInfo createInfo)
			throws NotFoundSignal, DuplicateNameSignal, FrameworkErrorSignal;
	
	public TransportCommand[] create(EventInfo eventInfo,
			List<CreateInfo> createInfoList) throws NotFoundSignal,
			DuplicateNameSignal, FrameworkErrorSignal;
	
	public TransportCommand setEvent(TransportCommandKey key, EventInfo eventInfo,
			SetEventInfo setEventInfo) throws NotFoundSignal,
			DuplicateNameSignal, FrameworkErrorSignal;
	
	public TransportCommand[] setEvent(List<TransportCommandKey> keyList, EventInfo eventInfo,
			List<SetEventInfo> setEventInfoList) throws NotFoundSignal,
			DuplicateNameSignal, FrameworkErrorSignal;
	
	public TransportCommand[] setEvent(List<TransportCommandKey> keyList, EventInfo eventInfo,
			SetEventInfo setEventInfo) throws NotFoundSignal,
			DuplicateNameSignal, FrameworkErrorSignal;
}
