- All Implemented Interfaces:
Serializable
,Iterable<Throwable>
public class SyncProviderException extends SQLException
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.
- Since:
- 1.5
- See Also:
SyncFactory
,SyncResolver
,SyncFactoryException
, Serialized Form
-
Constructor Summary
Constructors Constructor Description SyncProviderException()
Creates a newSyncProviderException
object without a detail message.SyncProviderException(String msg)
Constructs aSyncProviderException
object with the specified detail message.SyncProviderException(SyncResolver syncResolver)
Constructs aSyncProviderException
object with the specifiedSyncResolver
instance. -
Method Summary
Modifier and Type Method Description SyncResolver
getSyncResolver()
Retrieves theSyncResolver
object that has been set for thisSyncProviderException
object, or if none has been set, an instance of the defaultSyncResolver
implementation included in the reference implementation.void
setSyncResolver(SyncResolver syncResolver)
Sets theSyncResolver
object for thisSyncProviderException
object 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
-
Constructor Details
-
SyncProviderException
public SyncProviderException()Creates a newSyncProviderException
object without a detail message. -
SyncProviderException
Constructs aSyncProviderException
object with the specified detail message.- Parameters:
msg
- the detail message
-
SyncProviderException
Constructs aSyncProviderException
object with the specifiedSyncResolver
instance.- Parameters:
syncResolver
- theSyncResolver
instance used to to process the synchronization conflicts- Throws:
IllegalArgumentException
- if theSyncResolver
object isnull
.
-
-
Method Details
-
getSyncResolver
Retrieves theSyncResolver
object that has been set for thisSyncProviderException
object, or if none has been set, an instance of the defaultSyncResolver
implementation included in the reference implementation.If a
SyncProviderException
object is thrown, an application may use this method to generate aSyncResolver
object with which to resolve the conflict or conflicts that caused the exception to be thrown.- Returns:
- the
SyncResolver
object set for thisSyncProviderException
object or, if none has been set, an instance of the defaultSyncResolver
implementation. In addition, the defaultSyncResolver
implementation is also returned if theSyncResolver()
orSyncResolver(String)
constructors are used to instantiate theSyncResolver
instance.
-
setSyncResolver
Sets theSyncResolver
object for thisSyncProviderException
object to the one supplied. If the argument supplied isnull
, a call to the methodgetSyncResolver
will return the default reference implementation of theSyncResolver
interface.- Parameters:
syncResolver
- theSyncResolver
object to be set; cannot benull
- Throws:
IllegalArgumentException
- if theSyncResolver
object isnull
.- See Also:
getSyncResolver()
-