1 -- File: CDF_MetaDataDriver.cdl
2 -- Created: Mon Nov 17 16:41:35 1997
3 -- Author: Jean-Louis Frenkel
4 -- <rmi@frilox.paris1.matra-dtv.fr>
5 ---Copyright: Matra Datavision 1997
7 deferred class MetaDataDriver from CDF inherits Transient from Standard
11 Document from CDM, MetaData from CDM,
12 ExtendedString from TCollection,
13 ReferenceIterator from PCDM
16 NotImplemented from Standard
21 ---Category: virtual methods
23 HasVersionCapability(me: mutable)
24 ---Purpose: returns true if the MetaDataDriver can manage different
25 -- versions of a Data.
26 -- By default, returns Standard_False.
27 returns Boolean from Standard
30 CreateDependsOn(me: mutable; aFirstData: MetaData from CDM;
31 aSecondData: MetaData from CDM)
32 ---Purpose: Creates a "Depends On" relation between two Datas.
33 -- By default does nothing
36 CreateReference(me: mutable; aFrom, aTo: MetaData from CDM; aReferenceIdentifier: Integer from Standard; aToDocumentVersion: Integer from Standard)
39 HasVersion(me: mutable; aFolder, aName: ExtendedString from TCollection)
40 returns Boolean from Standard
41 ---Purpose: by default return Standard_True.
44 BuildFileName(me: mutable; aDocument: Document from CDM)
45 returns ExtendedString from TCollection
48 SetName(me: mutable; aDocument: Document from CDM; aName: ExtendedString from TCollection)
49 returns ExtendedString from TCollection
51 ---Purpose: this methods is usefull if the name of an object --
52 -- depends on the metadatadriver. For example a Driver
53 -- -- based on the operating system can choose to add
54 -- the extension of file to create to the object.
56 ---Category: Deferred methods
58 ---Overview: inquiring can be made either using a folder, a name and eventually
60 -- or a path which is the concatenation of a folder, a name and eventually
62 Find(me: mutable; aFolder, aName, aVersion: ExtendedString from TCollection)
63 returns Boolean from Standard
64 ---Purpose: should indicate whether meta-data exist in the DBMS corresponding
66 -- aVersion may be NULL;
69 HasReadPermission(me: mutable; aFolder, aName, aVersion: ExtendedString from TCollection)
70 returns Boolean from Standard
73 MetaData(me: mutable; aFolder, aName, aVersion: ExtendedString from TCollection)
74 returns MetaData from CDM
75 ---Purpose: should return the MetaData stored in the DBMS with the meta-data
76 -- corresponding to the Data. If the MetaDataDriver has version management capabilities
77 -- the version has to be set in the returned MetaData.
78 -- aVersion may be NULL
79 -- MetaData is called by GetMetaData
80 -- If the version is set to NULL, MetaData should return
81 -- the last version of the metadata
84 LastVersion(me: mutable; aMetaData: MetaData from CDM)
85 returns MetaData from CDM
87 ---Purpose: by default returns aMetaDATA
89 -- MetaData(me: mutable; aPath: ExtendedString from TCollection)
90 -- returns MetaData from CDM
91 ---Purpose: should return the MetaData stored in the DBMS with the meta-data
92 -- corresponding to the path. If the MetaDataDriver has version management capabilities
93 -- the version has to be set in the returned MetaData.
94 -- MetaData is called by GetMetaData
95 -- If the version is not included in the path , MetaData should return
96 -- the last version of the metadata
102 CreateMetaData(me: mutable; aDocument: Document from CDM;
103 aFileName: ExtendedString from TCollection)
104 ---Purpose: should create meta-data corresponding to aData and maintaining a meta-link
105 -- between these meta-data and aFileName
106 -- CreateMetaData is called by CreateData
107 returns MetaData from CDM
108 ---Purpose: If the metadata-driver
109 -- has version capabilities, version must be set in the returned Data.
112 FindFolder(me: mutable; aFolder: ExtendedString from TCollection)
113 returns Boolean from Standard
116 DefaultFolder(me: mutable) returns ExtendedString from TCollection
120 ---Category: methods about references.
122 ReferenceIterator(me: mutable)
123 returns ReferenceIterator from PCDM
127 Find(me: mutable; aFolder, aName: ExtendedString from TCollection)
128 returns Boolean from Standard;
129 ---Purpose: calls Find with an empty version
131 MetaData(me: mutable; aFolder, aName: ExtendedString from TCollection)
132 returns MetaData from CDM;
133 ---Purpose: calls MetaData with an empty version
136 end MetaDataDriver from CDF;