You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Datum was implemented with generic proxy classes like Table and Database which wrap a more specific child object, such as a PostgresTable or OracleStgeomTable. The purpose of this was to keep the interfaces consistent (e.g. a PostgresTable could never have a method that an OracleStgeomTable didn't). There was also a (partly cosmetic) motivation to standardize the results of type checks across like objects. However, there may be scenarios where there's useful functionality for one data source that doesn't make sense in another, like getting permissions from an Oracle SDE database. It may make more sense to move towards a constructor pattern that returns more specifically-typed objects and raising NotImplemented errors if something is missing in a subclass.
The text was updated successfully, but these errors were encountered:
Datum was implemented with generic proxy classes like
Table
andDatabase
which wrap a more specific child object, such as aPostgresTable
orOracleStgeomTable
. The purpose of this was to keep the interfaces consistent (e.g. aPostgresTable
could never have a method that anOracleStgeomTable
didn't). There was also a (partly cosmetic) motivation to standardize the results of type checks across like objects. However, there may be scenarios where there's useful functionality for one data source that doesn't make sense in another, like getting permissions from an Oracle SDE database. It may make more sense to move towards a constructor pattern that returns more specifically-typed objects and raisingNotImplemented
errors if something is missing in a subclass.The text was updated successfully, but these errors were encountered: