at.spardat.xma.rpc.RemoteOperation Maven / Gradle / Ivy
/*******************************************************************************
* Copyright (c) 2003, 2007 s IT Solutions AT Spardat GmbH .
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* s IT Solutions AT Spardat GmbH - initial API and implementation
*******************************************************************************/
// @(#) $Id: RemoteOperation.java 2089 2007-11-28 13:56:13Z s3460 $
package at.spardat.xma.rpc;
/**
* Common base class for the remote operations {@link RemoteCall} and {@link RemoteReply}.
*
* @author YSD, 26.05.2003 10:36:33
*/
public abstract class RemoteOperation {
/**
* Adds a parameter to this call that is transferred to the server and may
* be accessed via {@link #getParameter} there.
*
* Note that this feature is usually not necessary with XMA since data
* is automatically transferred via widget models. You should ask yourself
* seriously if you are doing things right.
*
* @param id a numeric id of the parameter. Must not be less than zero and greater than 127.
* @param parameter the parameter data which has to implement java.io.Serializable
* and must be successfully be serialized. It cannot be null.
* @throws IllegalArgumentException if any before mentioned condition is violated.
*/
public abstract void setParameter (int id, Object parameter);
/**
* Retrieves a parameter for a given id.
*
* @param id the id that has been used in {@link #setParameter}.
* @return the same object set via setParameter or null if there
* is no parameter with the given id.
*/
public abstract Object getParameter (int id);
}