Rev 1814 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
203 | jmachado | 1 | <?xml version="1.0"?> |
2 | <!DOCTYPE hibernate-mapping |
||
3 | PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" |
||
4 | "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> |
||
5 | |||
6 | <hibernate-mapping> |
||
1775 | jmachado | 7 | |
8 | <!-- Layer 1 --> |
||
287 | jmachado | 9 | <class name="pt.estgp.estgweb.domain.RepositoryFile" table="repositoryfile" abstract="true"> |
203 | jmachado | 10 | <meta attribute="extends">pt.estgp.estgweb.domain.OwnedDomainObject</meta> |
11 | <meta attribute="scope-class">public abstract</meta> |
||
12 | <id name="id" type="long"> |
||
13 | <generator class="native"/> |
||
14 | </id> |
||
15 | <discriminator column="discrimitator"/> |
||
1549 | jmachado | 16 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
203 | jmachado | 17 | <property name="saveDate" type="timestamp"/> |
18 | <many-to-one name="owner" class="pt.estgp.estgweb.domain.GenericUser" outer-join="true" lazy="proxy"/> |
||
19 | <many-to-one name="lastVersion" class="pt.estgp.estgweb.domain.RepositoryFileVersion" outer-join="true" lazy="false"/> |
||
20 | <property name="accessControl" type="string"/> |
||
1814 | jmachado | 21 | <property name="sourceModule" type="pt.estgp.estgweb.domain.typesgen.repository.AbstractRepositorySourceModuleEnhancedType"> |
22 | <meta attribute="property-type">pt.estgp.estgweb.domain.typesgen.repository.AbstractRepositorySourceModuleInterfacePlugin</meta> |
||
23 | </property> |
||
215 | jmachado | 24 | <property name="deleted" type="boolean" index="deletedIndex"/> |
203 | jmachado | 25 | <set name="repositoryFileVersions" lazy="true" order-by="saveDate desc"> |
26 | <key column="repositoryFile"/> |
||
27 | <one-to-many class="pt.estgp.estgweb.domain.RepositoryFileVersionImpl"/> |
||
28 | </set> |
||
29 | <subclass name="pt.estgp.estgweb.domain.RepositoryFileImpl" discriminator-value="RepositoryFileImpl"/> |
||
30 | </class> |
||
31 | |||
287 | jmachado | 32 | <class name="pt.estgp.estgweb.domain.RepositoryFileVersion" table="repositoryfileversion" abstract="true"> |
203 | jmachado | 33 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
34 | <meta attribute="scope-class">public abstract</meta> |
||
35 | <id name="id" type="long"> |
||
36 | <generator class="native"/> |
||
37 | </id> |
||
38 | <discriminator column="discrimitator"/> |
||
39 | <property name="saveDate" type="timestamp"/> |
||
40 | <property name="name" type="string"/> |
||
41 | <property name="contentType" type="string"/> |
||
204 | jmachado | 42 | <property name="extension" type="string"/> |
203 | jmachado | 43 | <property name="size" type="int"/> |
44 | <property name="description" type="text"/> |
||
1675 | jmachado | 45 | <property name="md5checksum" type="string" index="md5checksumIndex"/> |
46 | <!--When version already exist we refer here for it in order to avoid duplicate in FileSystem--> |
||
1830 | jmachado | 47 | <!-- no Servico o metodo de getInputStream vai buscar o real pela verificacao do Md5 e dos Bytes caso seja encontrado--> |
48 | <many-to-one name="mirrorRepositoryFileVersion" class="pt.estgp.estgweb.domain.RepositoryFileVersionImpl" outer-join="true" lazy="false" index="mirroredVIndex"> |
||
49 | <column name="mirroredFileVersion"/> |
||
50 | </many-to-one> |
||
51 | <set name="mirroredRepositoryFileVersions" lazy="true" order-by="saveDate desc"> |
||
52 | <key column="mirroredFileVersion"/> |
||
53 | <one-to-many class="pt.estgp.estgweb.domain.RepositoryFileVersionImpl"/> |
||
54 | </set> |
||
203 | jmachado | 55 | <many-to-one name="repositoryFile" class="pt.estgp.estgweb.domain.RepositoryFileImpl" outer-join="true" lazy="false"/> |
56 | <subclass name="pt.estgp.estgweb.domain.RepositoryFileVersionImpl" discriminator-value="RepositoryFileVersionImpl"/> |
||
57 | </class> |
||
1637 | jmachado | 58 | |
59 | |||
1775 | jmachado | 60 | |
61 | <!-- Layer 2 Logica do Negocio Repositorio Digital Alto Nivel como é o VFS por exemplo --> |
||
62 | |||
63 | |||
1637 | jmachado | 64 | <class name="pt.estgp.estgweb.domain.RepositoryDocument" table="repositorydocument" abstract="true"> |
65 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
||
66 | <meta attribute="scope-class">public abstract</meta> |
||
67 | <id name="id" type="long"> |
||
68 | <generator class="native"/> |
||
69 | </id> |
||
70 | <discriminator column="discrimitator"/> |
||
71 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
||
72 | <property name="saveDate" type="timestamp"/> |
||
73 | <property name="visible" type="boolean"/> |
||
74 | <property name="internalIdentifier" type="string"/> |
||
1725 | jmachado | 75 | <property name="title" type="string"> |
76 | <column name="title" sql-type="TEXT"/> |
||
77 | </property> |
||
1670 | jmachado | 78 | <property name="subtitle" type="string"/> |
1637 | jmachado | 79 | <property name="description" type="string"> |
80 | <column name="description" sql-type="TEXT"/> |
||
81 | </property> |
||
1766 | jmachado | 82 | <property name="subject" type="string"> |
1767 | jmachado | 83 | <column name="subject" sql-type="TEXT"/> |
1766 | jmachado | 84 | </property> |
1670 | jmachado | 85 | <property name="publisher" type="string"/> |
1814 | jmachado | 86 | <property name="authorsJson" type="pt.estgp.estgweb.domain.typesgen.repositorydocuments.EnhancedDocumentPersons"> |
87 | <meta attribute="property-type">pt.estgp.estgweb.domain.typesgen.repositorydocuments.DocumentPersons</meta> |
||
1637 | jmachado | 88 | <column name="authorsJson" sql-type="TEXT"/> |
89 | </property> |
||
1814 | jmachado | 90 | <property name="contributorsJson" type="pt.estgp.estgweb.domain.typesgen.repositorydocuments.EnhancedDocumentPersons"> |
91 | <meta attribute="property-type">pt.estgp.estgweb.domain.typesgen.repositorydocuments.DocumentPersons</meta> |
||
1637 | jmachado | 92 | <column name="contributorsJson" sql-type="TEXT"/> |
93 | </property> |
||
94 | <property name="publishDate" type="timestamp"/> |
||
95 | <property name="closeDate" type="timestamp"/> |
||
1735 | jmachado | 96 | <property name="historyEdit" type="string"> |
97 | <column name="historyEdit" sql-type="TEXT"/> |
||
98 | </property> |
||
1670 | jmachado | 99 | <many-to-one name="collection" class="pt.estgp.estgweb.domain.RepositoryDocumentCollectionImpl" outer-join="true" lazy="false"/> |
100 | |||
1728 | jmachado | 101 | <many-to-one name="owner" class="pt.estgp.estgweb.domain.User" outer-join="true" lazy="false"/> |
102 | |||
1637 | jmachado | 103 | <set name="repositoryDocumentFiles" lazy="true" order-by="saveDate desc"> |
104 | <key column="repositoryDocument"/> |
||
105 | <one-to-many class="pt.estgp.estgweb.domain.RepositoryDocumentFileImpl"/> |
||
106 | </set> |
||
107 | <subclass name="pt.estgp.estgweb.domain.RepositoryDocumentImpl" discriminator-value="RepositoryDocumentImpl"/> |
||
108 | </class> |
||
109 | |||
1670 | jmachado | 110 | <class name="pt.estgp.estgweb.domain.RepositoryDocumentCollection" table="repositorydocumentcollection" abstract="true"> |
111 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
||
112 | <meta attribute="scope-class">public abstract</meta> |
||
113 | <id name="id" type="long"> |
||
114 | <generator class="native"/> |
||
115 | </id> |
||
116 | <discriminator column="discrimitator"/> |
||
117 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
||
118 | <property name="saveDate" type="timestamp"/> |
||
119 | <property name="visible" type="boolean"/> |
||
1755 | jmachado | 120 | <property name="sortField" type="string"> |
121 | <column name="sortField" default="0"/> |
||
122 | </property> |
||
1670 | jmachado | 123 | <property name="name" type="string"/> |
124 | <property name="description" type="string"> |
||
125 | <column name="description" sql-type="TEXT"/> |
||
126 | </property> |
||
1675 | jmachado | 127 | <property name="legacyUrl" type="string"/> |
128 | <many-to-one name="parent" class="pt.estgp.estgweb.domain.RepositoryDocumentCollectionImpl" outer-join="true" lazy="false"/> |
||
1755 | jmachado | 129 | <set name="childs" lazy="true" order-by="sortField asc"> |
1675 | jmachado | 130 | <key column="parent"/> |
131 | <one-to-many class="pt.estgp.estgweb.domain.RepositoryDocumentCollectionImpl"/> |
||
132 | </set> |
||
1728 | jmachado | 133 | <set name="collectionManagers" table="repositorycollectionmanagers"> |
134 | <key column="collection_id"/> |
||
1732 | jmachado | 135 | <many-to-many column="user_id" class="pt.estgp.estgweb.domain.UserImpl"/> |
1728 | jmachado | 136 | </set> |
1670 | jmachado | 137 | <subclass name="pt.estgp.estgweb.domain.RepositoryDocumentCollectionImpl" discriminator-value="RepositoryDocumentCollectionImpl"/> |
138 | </class> |
||
139 | |||
140 | |||
1637 | jmachado | 141 | <class name="pt.estgp.estgweb.domain.RepositoryDocumentFile" table="repositorydocumentfile" abstract="true"> |
142 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
||
143 | <meta attribute="scope-class">public abstract</meta> |
||
144 | <id name="id" type="long"> |
||
145 | <generator class="native"/> |
||
146 | </id> |
||
147 | <discriminator column="discrimitator"/> |
||
148 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
||
149 | <property name="saveDate" type="timestamp"/> |
||
150 | <property name="visible" type="boolean"/> |
||
1725 | jmachado | 151 | <property name="title" type="string"> |
152 | <column name="title" sql-type="TEXT"/> |
||
153 | </property> |
||
1637 | jmachado | 154 | <property name="description" type="string"> |
155 | <column name="description" sql-type="TEXT"/> |
||
156 | </property> |
||
1670 | jmachado | 157 | <property name="repositoryFileProxy" |
1814 | jmachado | 158 | type="pt.estgp.estgweb.domain.typesgenservices.repositorydocuments.EnhancedRepositoryFileProxy"> |
159 | <meta attribute="property-type">pt.estgp.estgweb.domain.typesgenservices.repositorydocuments.RepositoryFileProxy</meta> |
||
1670 | jmachado | 160 | <column name="repositoryStream" sql-type="VARCHAR(255)"/> |
161 | </property> |
||
162 | <!--<property name="repositoryStream" type="string" index="repositoryStreamIndex"> |
||
163 | <column name="repositoryStream" sql-type="VARCHAR(255)"/> |
||
164 | </property>--> |
||
165 | |||
1637 | jmachado | 166 | <subclass name="pt.estgp.estgweb.domain.RepositoryDocumentFileImpl" discriminator-value="RepositoryDocumentFileImpl"/> |
167 | </class> |
||
1692 | jmachado | 168 | |
169 | <class name="pt.estgp.estgweb.domain.RepositoryDocumentInterface" table="repositorydocumentinterface" abstract="true"> |
||
170 | <meta attribute="extends">pt.estgp.estgweb.domain.DomainSerializableObject</meta> |
||
171 | <meta attribute="scope-class">public abstract</meta> |
||
172 | <id name="id" type="long"> |
||
173 | <generator class="native"/> |
||
174 | </id> |
||
175 | <discriminator column="discrimitator"/> |
||
176 | <timestamp source="db" name="updateDate" unsaved-value="null"/> |
||
177 | <property name="saveDate" type="timestamp"/> |
||
178 | <property name="visible" type="boolean"/> |
||
179 | <property name="slug" type="string"/> |
||
180 | <property name="adminDescription" type="string"> |
||
181 | <column name="admin_description" sql-type="TEXT"/> |
||
182 | </property> |
||
1814 | jmachado | 183 | <property name="repositoryInterface" type="pt.estgp.estgweb.domain.typesgen.repositorydocuments.EnhancedRepositoryInterface"> |
184 | <meta attribute="property-type">pt.estgp.estgweb.domain.typesgen.repositorydocuments.RepositoryInterface</meta> |
||
1692 | jmachado | 185 | <column name="repositoryInterfaceJson" sql-type="TEXT"/> |
186 | </property> |
||
187 | <subclass name="pt.estgp.estgweb.domain.RepositoryDocumentInterfaceImpl" discriminator-value="RepositoryDocumentInterfaceImpl"/> |
||
188 | </class> |
||
203 | jmachado | 189 | </hibernate-mapping> |