Changes between Version 4 and Version 5 of FDORfc37
- Timestamp:
- Jun 9, 2009, 8:00:11 PM (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
FDORfc37
v4 v5 27 27 == Overview == 28 28 29 !FdoException is the root class for FDO exception handling. Currently FDO provides less than 10 exception classes derived from FdoException. So it is difficult for users to get the accurate error information so that they can take some actions according to exception type instead of just showing an error message. More exception classes will be provided in this RFC.29 !FdoException is the root class for FDO exception handling. Currently FDO provides less than 10 exception classes derived from !FdoException. So it is difficult for users to get the accurate error information so that they can take some actions according to exception type instead of just showing an error message. More exception classes will be provided in this RFC. 30 30 31 31 However, it is impossible for FDO exception classes to cover all exception type. For some FDO data sources such as Oracle and SQL Server, they already return their native error code to FDO provider when encountering errors. If FDO can return the native error code to users, users may be able to handle it properly. For exmaple, … … 47 47 == Proposed Solution == 48 48 49 The following methods will be added to class FdoException to return native error code. Providers will be updated to assign native error code when a FDO exception is created. If there is no native error code assigned, the default value is 0.49 The following methods will be added to class !FdoException to return native error code. Providers will be updated to assign native error code when a FDO exception is created. If there is no native error code assigned, the default value is 0. 50 50 51 51 {{{ … … 102 102 - !FdoConstraintException: The !FdoConstraintException class is the exception type thrown from classes editing property values of datastore. 103 103 - !FdoNullPropertyValueException: The !FdoNullPropertyValueException class is the exception type thrown from classes editing property values of datastore. This exception is thrown whenever setting a non-nullable property value to null. 104 - !FdoOutOfRangePropertyValueException: The !FdoOutOfRangePropertyValueException class is the exception type thrown from classes editing property values of datastore. This exception is thrown whenever setting the property value to one which violates constraint FdoPropertyValueConstraintRange.104 - !FdoOutOfRangePropertyValueException: The !FdoOutOfRangePropertyValueException class is the exception type thrown from classes editing property values of datastore. This exception is thrown whenever setting the property value to one which violates constraint !FdoPropertyValueConstraintRange. 105 105 - !FdoNotUniquePropertyValueException: The !FdoNotUniquePropertyValueException class is the exception type thrown from classes editing property values of datastore. This exception is thrown whenever setting the property value to one which isn’t unique. 106 - !FdoNotInListPropertyValueException: The !FdoNotInListPropertyValueException class is the exception type thrown from classes editing property values of datastore. This exception is thrown whenever setting the property value to one which violates constraint FdoPropertyValueConstraintList.106 - !FdoNotInListPropertyValueException: The !FdoNotInListPropertyValueException class is the exception type thrown from classes editing property values of datastore. This exception is thrown whenever setting the property value to one which violates constraint !FdoPropertyValueConstraintList. 107 107 - !FdoSchemaDoesNotExistException: The !FdoSchemaDoesNotExistException class is the exception type thrown from classes in the Data and Schema packages. This exception is thrown whenever the specified schema doesn’t exist. 108 108 - !FdoSchemaAlreadyExistsException: The !FdoSchemaDoesNotExistException class is the exception type thrown from classes FdoIApplySchema. This exception is thrown whenever creating a schema which already exists.