/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.communication.rpc.api; import java.io.Serializable; import java.util.List; import de.rcenvironment.core.utils.common.rpc.RemotableService; import de.rcenvironment.core.utils.common.rpc.RemoteOperationException; /** * Remote-accessible methods for callback handling. * * @author Doreen Seider * @author Robert Mischke (extracted) */ @RemotableService public interface RemotableCallbackService { /** * Invokes the method given by its name on the {@link Object} given by its identifier with the given parameter. * * @param objectIdentifier Identifier of the object to call. * @param methodName Name of the method to call. * @param parameters Parameter of the method to call. * @return The return object of the method call. * @throws RemoteOperationException standard remote operation exception */ Object callback(String objectIdentifier, String methodName, List<? extends Serializable> parameters) throws RemoteOperationException; /** * Sets the time to live for a bunch of objects represented by its identifier. * * @param objectIdentifier The object's identifier to set the TTL for. * @param ttl The TTL to set. * @throws RemoteOperationException standard remote operation exception */ void setTTL(String objectIdentifier, Long ttl) throws RemoteOperationException; }