Creating and accessing objects with the API
- Last Updated: January 17, 2024
- 2 minute read
- OpenEdge
- Version 12.8
- Documentation
When you use the API, you create or retrieve objects
associated with entity interfaces using factory and retrieval methods
of the API service class. In addition, child collection objects
are returned using properties or methods of parent entity or collection
objects. However, you must instantiate the API service and the following
classes directly using the ABL NEW function (or
related ABL class instantiation mechanisms):
-
OpenEdge.DataAdmin.DataAdminService— The API service class, which you typically reference as anOpenEdge.DataAdmin.IDataAdminServiceinterface type, and referred to generally as the DataAdminService (or service) throughout this manual -
OpenEdge.DataAdmin.RequestInfo— A class for specifying filtering criteria on child collections of requested entity objects, which you typically reference as anOpenEdge.DataAdmin.IRequestInfointerface type -
OpenEdge.DataAdmin.Util.DeallocateUtility— A utility class for deallocating partitions, which you typically reference as anOpenEdge.DataAdmin.Util.IDataAdminUtilityinterface type
These interfaces are intended for run-time usage. They might be extended with additional properties and methods with each release, and classes that implement an interface in this release will likely not compile in a future release. In addition, some interfaces define members that are supported for OpenEdge use only. These restricted members are identified in the description of the relevant interfaces.
Any public methods in implementing classes that are not defined in the corresponding interface might not be available in a subsequent release.
Each package also contains source code that is internal to the API service and not supported for use by applications. In general, use of the public interfaces protects against any accidental use of this source code.
However, very few of the implementing classes are defined as final. It is conceivable you might want to extend (inherit) these classes to resolve some requirement or fix a limitation. Any class extensions that you define are very likely to need changes when you install a new release.