All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.resource.cci.InteractionSpec Maven / Gradle / Ivy

Go to download

This artifact provides a single jar that contains all classes required to use remote EJB and JMS, including all dependencies. It is intended for use by those not using maven, maven users should just import the EJB and JMS BOM's instead (shaded JAR's cause lots of problems with maven, as it is very easy to inadvertently end up with different versions on classes on the class path).

There is a newer version: 34.0.0.Final
Show newest version
/*
 * Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0, which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * This Source Code may also be made available under the following Secondary
 * Licenses when the conditions for such availability set forth in the
 * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
 * version 2 with the GNU Classpath Exception, which is available at
 * https://www.gnu.org/software/classpath/license.html.
 *
 * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
 */

package javax.resource.cci;

import java.io.Serializable;

/** An InteractionSpec holds properties for driving an Interaction 
 *  with an EIS instance. An InteractionSpec is used by an Interaction
 *  to execute the specified function on an underlying EIS.
 *
 *  

The CCI specification defines a set of standard properties for * an InteractionSpec. An InteractionSpec implementation is not * required to support a standard property if that property does * not apply to its underlying EIS. * *

The InteractionSpec implementation class must provide getter and * setter methods for each of its supported properties. The getter and * setter methods convention should be based on the Java Beans design * pattern. * *

The standard properties are as follows: *

    *
  • FunctionName: name of an EIS function *
  • InteractionVerb: mode of interaction with an EIS instance: * SYNC_SEND, SYNC_SEND_RECEIVE, SYNC_RECEIVE *
  • ExecutionTimeout: the number of milliseconds an Interaction * will wait for an EIS to execute the specified function *
* *

The following standard properties are used to give hints to an * Interaction instance about the ResultSet requirements: *

    *
  • FetchSize *
  • FetchDirection *
  • MaxFieldSize *
  • ResultSetType *
  • ResultSetConcurrency *
* *

A CCI implementation can provide additional properties beyond * that described in the InteractionSpec interface. Note that the * format and type of the additional properties is specific to an EIS * and is outside the scope of the CCI specification. * *

It is required that the InteractionSpec interface be implemented * as a JavaBean for the toolability support. The properties on the * InteractionSpec implementation class should be defined through the * getter and setter methods pattern. An implementation class for * InteractionSpec interface is required to implement the * java.io.Serializable interface. * * @author Rahul Sharma * @version 0.8 * @since 0.8 * @see javax.resource.cci.Interaction **/ public interface InteractionSpec extends java.io.Serializable { /**Interaction Verb type: The execution of an Interaction does only a * send to the target EIS instance. The input record is sent to the * EIS instance without any synchronous response in terms of an * output Record or ResultSet. */ public static final int SYNC_SEND = 0; /**Interaction Verb type: The execution of an Interaction sends a * request to the EIS instance and receives response synchronously. * The input record is sent to the EIS instance with the output * received either as Record or CCIResultSet. **/ public static final int SYNC_SEND_RECEIVE = 1; /**The execution of an Interaction results in a synchronous * receive of an output Record. An example is: a session bean gets * a method invocation and it uses this SEND_RECEIVE form of * interaction to retrieve messages that have been delivered to a * message queue. **/ public static final int SYNC_RECEIVE = 2; }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy