Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, Home of Professional Open Source
   * Copyright 2006, Red Hat Middleware LLC, and individual contributors
   * as indicated by the @author tags. 
   * See the copyright.txt in the distribution for a full listing 
   * of individual contributors.
   * This copyrighted material is made available to anyone wishing to use,
   * modify, copy, or redistribute it subject to the terms and conditions
   * of the GNU Lesser General Public License, v. 2.1.
  * This program is distributed in the hope that it will be useful, but WITHOUT A
  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
  * You should have received a copy of the GNU Lesser General Public License,
  * v.2.1 along with this distribution; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  * MA  02110-1301, USA.
  * 
  * (C) 2005-2006,
  * @author JBoss Inc.
  */
 /*
  * Copyright (C) 2002,
  *
  * Arjuna Technologies Limited,
  * Newcastle upon Tyne,
  * Tyne and Wear,
  * UK.
  *
  * $Id: UserCoordinator.java,v 1.2 2005/05/19 12:13:25 nmcl Exp $
  */
 
 package com.arjuna.mw.wscf.model.twophase.api;
 
 
 
 
 
The user portion of the coordinator API. An implementation of this interface presents each thread with the capability to create and manage coordinators. It is very similar to the OTS Current and JTA UserTransaction.

Author(s):
Mark Little (mark.little@arjuna.com)
Version:
$Id: UserCoordinator.java,v 1.2 2005/05/19 12:13:25 nmcl Exp $
Since:
1.0.
 
 
 public interface UserCoordinator
 {

    
Start a new activity. If there is already an activity associated with the thread then it will be nested. An implementation specific timeout will be associated with the activity (which may be no timeout).

Throws:
com.arjuna.mw.wsas.exceptions.WrongStateException Thrown if the any currently associated activity is in a state that does not allow a new activity to be enlisted.
com.arjuna.mw.wsas.exceptions.SystemException Thrown in any other situation.
 
 
     public void begin (String serviceTypethrows WrongStateExceptionSystemException;

    
Start a new activity. If there is already an activity associated with the thread then it will be nested. If the activity is still active when the specified timeout elapses, it will be terminated.

Parameters:
timeout The timeout associated with the activity (in seconds). If the activity has not been terminated by the time this period elapses, then it will automatically be terminated.
Throws:
com.arjuna.mw.wsas.exceptions.WrongStateException Thrown if the currently associated activity is in a state that does not allow a new activity to be enlisted as a child.
com.arjuna.mw.wsas.exceptions.InvalidTimeoutException Thrown if the specified timeout is invalid within the current working environment.
com.arjuna.mw.wsas.exceptions.SystemException Thrown in any other situation.
 
 
     public void begin (String serviceTypeint timeoutthrows WrongStateExceptionInvalidTimeoutExceptionSystemException;

    
Confirm the current activity.

Throws:
com.arjuna.mw.wsas.exceptions.InvalidActivityException Thrown if the current activity is invalid in the execution environment.
com.arjuna.mw.wsas.exceptions.WrongStateException Thrown if the current activity is not in a state that allows it to be completed in the status requested.
com.arjuna.mw.wsas.exceptions.ProtocolViolationException Thrown if the a violation of the activity service or HLS protocol occurs.
com.arjuna.mw.wsas.exceptions.NoPermissionException Thrown if the invoking thread does not have permission to terminate the transaction.
com.arjuna.mw.wsas.exceptions.SystemException Thrown if some other error occurred.
Cancel the activity.

Throws:
com.arjuna.mw.wsas.exceptions.InvalidActivityException Thrown if the current activity is invalid in the execution environment.
com.arjuna.mw.wsas.exceptions.WrongStateException Thrown if the current activity is not in a state that allows it to be completed, or is incompatible with the completion status provided.
com.arjuna.mw.wsas.exceptions.ProtocolViolationException Thrown if the a violation of the activity service or HLS protocol occurs.
com.arjuna.mw.wsas.exceptions.NoPermissionException Thrown if the invoking thread does not have permission to terminate the transaction.
com.arjuna.mw.wsas.exceptions.SystemException Thrown if some other error occurred.
See also:
com.arjuna.mw.wsas.activity.Outcome
Set the termination status for the current activity to cancel only.

Throws:
com.arjuna.mw.wsas.exceptions.WrongStateException Thrown if the completion status is incompatible with the current state of the activity.
com.arjuna.mw.wsas.exceptions.SystemException Thrown if any other error occurs.
    public void setCancelOnly () throws NoCoordinatorExceptionWrongStateExceptionSystemException;

    
Get the timeout value currently associated with activities.

Returns:
the timeout value in seconds, or 0 if no application specified timeout has been provided.
Throws:
com.arjuna.mw.wsas.exceptions.SystemException Thrown if any error occurs.
    public int getTimeout () throws SystemException;

    
Set the timeout to be associated with all subsequently created activities. A default value of 0 is automatically associated with each thread and this means that no application specified timeout is set for activities.

Parameters:
timeout The timeout (in seconds) to associate with all subsequently created activities. This value must be 0 or greater.
Throws:
com.arjuna.mw.wsas.exceptions.InvalidTimeoutException Thrown if the timeout value provided is negative, too large, or if timeouts are simply not supported by the activity implementation.
com.arjuna.mw.wsas.exceptions.SystemException Thrown if any other error occurs.
    public void setTimeout (int timeoutthrows InvalidTimeoutExceptionSystemException;

    

Returns:
the status of the current activity. If there is no activity associated with the thread then NoActivity will be returned.
Throws:
com.arjuna.mw.wsas.exceptions.SystemException Thrown if any error occurs.
See also:
com.arjuna.mw.wsas.status.Status
    public com.arjuna.mw.wsas.status.Status status () throws SystemException;
    
    

Returns:
the unique coordinator id for the current coordinator. This may or may not be the same as the activity id.
Throws:
com.arjuna.mw.wsas.exceptions.NoActivityException Thrown if there is no activity associated with the invoking thread.
com.arjuna.mw.wsas.exceptions.SystemException Thrown if some other error occurred.
    public CoordinatorId identifier () throws NoActivityExceptionSystemException;

    
Suspend the current activity from this thread and return the token representing the context, if any, or null otherwise. Once called, the thread will have no activities associated with it.

Returns:
the token representing the current context, if any, or null otherwise.
Throws:
com.arjuna.mw.wsas.exceptions.SystemException Thrown if any error occurs.
    public ActivityHierarchy suspend () throws SystemException;

    
Given a token representing a context, associate it with the current thread of control. This will implicitly disassociate the thread from any activities that it may already be associated with. If the parameter is null then the thread is associated with no activity.

Parameters:
tx The activity to associate with this thread. This may be null in which case the current thread becomes associated with no activity.
Throws:
com.arjuna.mw.wsas.exceptions.InvalidActivityException Thrown if the activity handle is invalid in this context.
com.arjuna.mw.wsas.exceptions.SystemException Thrown if any other error occurs.
    public void resume (ActivityHierarchy txthrows InvalidActivityExceptionSystemException;

    

Returns:
the token representing the current activity context hierarchy, or null if there is none associated with the invoking thread.
Throws:
com.arjuna.mw.wsas.exceptions.SystemException Thrown if any error occurs.
    
New to GrepCode? Check out our FAQ X