- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.sql.SQLException
-
- javax.sql.rowset.spi.SyncProviderException
-
- All Implemented Interfaces:
Serializable,Iterable<Throwable>
public class SyncProviderException extends SQLException
Indicates an error with theSyncProvidermechanism. This exception is created by aSyncProviderabstract class extension if it encounters violations in reading from or writing to the originating data source.If it is implemented to do so, the
SyncProviderobject may also create aSyncResolverobject and either initialize theSyncProviderExceptionobject with it at construction time or set it with theSyncProviderobject at a later time.The method
acceptChangeswill throw this exception after the writer has finished checking for conflicts and has found one or more conflicts. An application may catch aSyncProviderExceptionobject and call itsgetSyncResolvermethod to get itsSyncResolverobject. See the code fragment in the interface comment forSyncResolverfor an example. ThisSyncResolverobject will mirror theRowSetobject that generated the exception, except that it will contain only the values from the data source that are in conflict. All other values in theSyncResolverobject will benull.The
SyncResolverobject 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
SyncProviderExceptionobject may or may not contain a description of the condition causing the exception. The inherited methodgetMessagemay be called to retrieve the description if there is one.- Since:
- 1.5
- See Also:
SyncFactory,SyncResolver,SyncFactoryException, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SyncProviderException()Creates a newSyncProviderExceptionobject without a detail message.SyncProviderException(String msg)Constructs aSyncProviderExceptionobject with the specified detail message.SyncProviderException(SyncResolver syncResolver)Constructs aSyncProviderExceptionobject with the specifiedSyncResolverinstance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SyncResolvergetSyncResolver()Retrieves theSyncResolverobject that has been set for thisSyncProviderExceptionobject, or if none has been set, an instance of the defaultSyncResolverimplementation included in the reference implementation.voidsetSyncResolver(SyncResolver syncResolver)Sets theSyncResolverobject for thisSyncProviderExceptionobject to the one supplied.-
Methods declared in class java.sql.SQLException
getErrorCode, getNextException, getSQLState, iterator, setNextException
-
Methods declared in class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods declared in interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Constructor Detail
-
SyncProviderException
public SyncProviderException()
Creates a newSyncProviderExceptionobject without a detail message.
-
SyncProviderException
public SyncProviderException(String msg)
Constructs aSyncProviderExceptionobject with the specified detail message.- Parameters:
msg- the detail message
-
SyncProviderException
public SyncProviderException(SyncResolver syncResolver)
Constructs aSyncProviderExceptionobject with the specifiedSyncResolverinstance.- Parameters:
syncResolver- theSyncResolverinstance used to to process the synchronization conflicts- Throws:
IllegalArgumentException- if theSyncResolverobject isnull.
-
-
Method Detail
-
getSyncResolver
public SyncResolver getSyncResolver()
Retrieves theSyncResolverobject that has been set for thisSyncProviderExceptionobject, or if none has been set, an instance of the defaultSyncResolverimplementation included in the reference implementation.If a
SyncProviderExceptionobject is thrown, an application may use this method to generate aSyncResolverobject with which to resolve the conflict or conflicts that caused the exception to be thrown.- Returns:
- the
SyncResolverobject set for thisSyncProviderExceptionobject or, if none has been set, an instance of the defaultSyncResolverimplementation. In addition, the defaultSyncResolverimplementation is also returned if theSyncResolver()orSyncResolver(String)constructors are used to instantiate theSyncResolverinstance.
-
setSyncResolver
public void setSyncResolver(SyncResolver syncResolver)
Sets theSyncResolverobject for thisSyncProviderExceptionobject to the one supplied. If the argument supplied isnull, a call to the methodgetSyncResolverwill return the default reference implementation of theSyncResolverinterface.- Parameters:
syncResolver- theSyncResolverobject to be set; cannot benull- Throws:
IllegalArgumentException- if theSyncResolverobject isnull.- See Also:
getSyncResolver()
-
-