JavaTM 2 Platform
Standard Ed. 5.0

javax.sql.rowset.spi
Class SyncProviderException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.sql.SQLException
              extended by javax.sql.rowset.spi.SyncProviderException
All Implemented Interfaces:
Serializable

public class SyncProviderException
extends SQLException

Indicates an error with the SyncProvider mechanism. This exception is created by a SyncProvider abstract class extension if it encounters violations in reading from or writing to the originating data source.

If it is implemented to do so, the SyncProvider object may also create a SyncResolver object and either initialize the SyncProviderException object with it at construction time or set it with the SyncProvider object at a later time.

The method acceptChanges will throw this exception after the writer has finished checking for conflicts and has found one or more conflicts. An application may catch a SyncProviderException object and call its getSyncResolver method to get its SyncResolver object. See the code fragment in the interface comment for SyncResolver for an example. This SyncResolver object will mirror the RowSet object that generated the exception, except that it will contain only the values from the data source that are in conflict. All other values in the SyncResolver object will be null.

The SyncResolver object may be used to examine and resolve each conflict in a row and then go to the next row with a conflict to repeat the procedure.

A SyncProviderException object may or may not contain a description of the condition causing the exception. The inherited method getMessage may be called to retrieve the description if there is one.

See Also:
SyncFactory, SyncResolver, SyncFactoryException, Serialized Form

Constructor Summary
SyncProviderException()
          Creates a new SyncProviderException object without a detail message.
SyncProviderException(String msg)
          Constructs a SyncProviderException object with the specified detail message.
SyncProviderException(SyncResolver syncResolver)
          Constructs a SyncProviderException object with the specified SyncResolver instance.
 
Method Summary
 SyncResolver getSyncResolver()
          Retrieves the SyncResolver object that has been set for this SyncProviderException object, or if none has been set, an instance of the default SyncResolver implementation included in the reference implementation.
 void setSyncResolver(SyncResolver syncResolver)
          Sets the SyncResolver object for this SyncProviderException object to the one supplied.
 
Methods inherited from class java.sql.SQLException
getErrorCode, getNextException, getSQLState, setNextException
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SyncProviderException

public SyncProviderException()
Creates a new SyncProviderException object without a detail message.


SyncProviderException

public SyncProviderException(String msg)
Constructs a SyncProviderException object with the specified detail message.

Parameters:
msg - the detail message

SyncProviderException

public SyncProviderException(SyncResolver syncResolver)
Constructs a SyncProviderException object with the specified SyncResolver instance.

Parameters:
syncResolver - the SyncResolver instance used to to process the synchronization conflicts
Throws:
IllegalArgumentException - if the SyncResolver object is null.
Method Detail

getSyncResolver

public SyncResolver getSyncResolver()
Retrieves the SyncResolver object that has been set for this SyncProviderException object, or if none has been set, an instance of the default SyncResolver implementation included in the reference implementation.

If a SyncProviderException object is thrown, an application may use this method to generate a SyncResolver object with which to resolve the conflict or conflicts that caused the exception to be thrown.

Returns:
the SyncResolver object set for this SyncProviderException object or, if none has been set, an instance of the default SyncResolver implementation. In addition, the default SyncResolver implementation is also returned if the SyncResolver() or SyncResolver(String) constructors are used to instantiate the SyncResolver instance.

setSyncResolver

public void setSyncResolver(SyncResolver syncResolver)
Sets the SyncResolver object for this SyncProviderException object to the one supplied. If the argument supplied is null, a call to the method getSyncResolver will return the default reference implementation of the SyncResolver interface.

Parameters:
syncResolver - the SyncResolver object to be set; cannot be null
Throws:
IllegalArgumentException - if the SyncResolver object is null.
See Also:
getSyncResolver()

JavaTM 2 Platform
Standard Ed. 5.0

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.