package de.tum.in.i22.uc.cm.interfaces; import java.util.Set; import de.tum.in.i22.uc.cm.datatypes.interfaces.IContainer; import de.tum.in.i22.uc.cm.datatypes.interfaces.IData; import de.tum.in.i22.uc.cm.datatypes.interfaces.IEvent; import de.tum.in.i22.uc.cm.datatypes.interfaces.IName; import de.tum.in.i22.uc.cm.datatypes.interfaces.IStatus; //import de.tum.in.i22.uc.thrift.generator.AThriftMethod; //import de.tum.in.i22.uc.thrift.generator.AThriftService; /** * Interface defining methods a PDP can invoke on a PIP. * @author Kelbert & Lovat * */ //@AThriftService(name="TPdp2Pip") public interface IPdp2Pip { // @AThriftMethod(signature="bool evaluatePredicateSimulatingNextState(1:Types.TEvent eventToSimulate, 2:string predicate)") public boolean evaluatePredicateSimulatingNextState(IEvent eventToSimulate, String predicate); // @AThriftMethod(signature="bool evaluatePredicatCurrentState(1:string predicate)") public boolean evaluatePredicateCurrentState(String predicate); // @AThriftMethod(signature="set<Types.TContainer> getContainerForData(1:Types.TData data)") public Set<IContainer> getContainersForData(IData data); // @AThriftMethod(signature="set<Types.TData> getDataInContainer(1:Types.TName containerName)") public Set<IData> getDataInContainer(IName containerName); // @AThriftMethod(signature="Types.TStatus startSimulation()") public IStatus startSimulation(); // @AThriftMethod(signature="Types.TStatus stopSimulation()") public IStatus stopSimulation(); // @AThriftMethod(signature="bool isSimulating()") public boolean isSimulating(); // @AThriftMethod(signature="Types.TStatus update(1:Types.TEvent updateEvent)") public IStatus update(IEvent updateEvent); }