The SQL repository is a generalized and flexible implementation of the Oracle ATG Web Commerce Repository API that an application can use to access data stored in an SQL database. See the Repository API chapter for more information. The SQL repository is implemented through the atg.adapter.gsa package (GSA stands for Generic SQL Adapter).

The main Oracle ATG Web Commerce component in the SQL repository is an instance of the atg.adapter.gsa.GSARepository class, which extends the class atg.repository.RepositoryImpl and implements two interfaces:

  • atg.repository.MutableRepository

  • atg.repository.content.ContentRepository

You create an SQL repository instance by instantiating the atg.adapter.gsa.GSARepository class. This class is not documented in the ATG Platform API Reference, and it is not intended that you access this class directly from Java code. Normally, you access all Repository functionality with the interfaces atg.repository.Repository and atg.repository.MutableRepository. This enables your classes to work with any repository implementation for the greatest flexibility. Some methods like those for cache invalidation are defined on the class atg.repository.RepositoryImpl. It is anticipated that future repositories will extend that class, so you can make your code more reusable and maintainable by accessing those methods on this base class rather than the implementation class of atg.adapter.gsa.GSARepository.

The SQL repository uses an XML repository definition file to describe the item descriptors that compose a repository. The repository definition file also describes the relationships between repository definitions—item descriptors, repository items, and repository item properties, and the corresponding elements of an SQL database—its tables, rows, and columns, respectively. The XML tags of the repository definition file are described in detail in the SQL Repository Reference chapter. The XML tags are also introduced in examples in this chapter and in the SQL Repository Item Properties chapter.