Changeset 229


Ignore:
Timestamp:
03/15/10 18:41:40 (14 years ago)
Author:
oschonef
Message:

HEADS UP: database layout changed

Location:
VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/VirtualCollectionRegistry.java

    r226 r229  
    104104                        // store virtual collection
    105105                        vc.setOwner(user);
    106                         vc.setPid(Handle.createPid());
     106                        String uuid = vc.createUUID();
    107107                        em.persist(vc);                 
    108108                        em.getTransaction().commit();
     
    110110                        // XXX: for test PID service
    111111                        em.getTransaction().begin();
    112                         em.persist(new Handle(vc.getPid(), Handle.Type.COLLECTION, vc.getId()));
     112                        em.persist(new Handle(uuid, Handle.Type.COLLECTION, vc.getId()));
    113113                        em.getTransaction().commit();
    114114                        return vc.getId();
  • VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ClarinVirtualCollection.java

    r226 r229  
    4949                @XmlElement(name = "MdSelfLink")
    5050                public URI getSelfLink() {
    51                         return cvc.createHandleURI(cvc.getVirtualCollection().getPid());
     51                        // FIXME: wrong link
     52                        return cvc.createHandleURI(cvc.getVirtualCollection().getUUID());
    5253                }
    5354
  • VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/VirtualCollection.java

    r227 r229  
    55import java.util.LinkedHashSet;
    66import java.util.Set;
     7import java.util.UUID;
    78
    89import javax.persistence.CascadeType;
     
    8990        @JoinColumn(name = "owner_id", nullable = false)
    9091        private User owner;
    91         @Column(name = "pid", nullable = false)
    92         private String pid;
     92        @Column(name = "uuid", unique = true, nullable = false,
     93                           updatable = false, length = 36)
     94        private String uuid;
    9395        @Column(name = "name", nullable = false)
    9496        private String name;
     
    138140        }
    139141
    140         public void setPid(String pid) {
    141                 if (name == null) {
    142                         throw new NullPointerException("name == null");
    143                 }
    144                 pid = pid.trim();
    145                 if (pid.length() < 1) {
    146                         throw new IllegalArgumentException("empty pid is not allowed");
    147                 }
    148                 this.pid = pid;
    149         }
    150        
    151         @XmlAttribute(name = "persistentId")
    152         public String getPid() {
    153                 return pid;
     142        public String createUUID() {
     143                if (this.uuid == null) {
     144                        this.uuid = UUID.randomUUID().toString();
     145                }
     146                return this.uuid;
     147        }
     148
     149        @XmlAttribute(name = "uuid")
     150        public String getUUID() {
     151                return this.uuid;
    154152        }
    155153
  • VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/VirtualCollection.xsd

    r226 r229  
    3434                </xs:sequence>
    3535                <xs:attribute name="id" type="xs:long" use="optional" />
     36                <xs:attribute name="uuid" type="xs:string" use="optional" />
    3637                <xs:attribute name="persistentId" type="xs:string" use="optional" />
    3738        </xs:complexType>
Note: See TracChangeset for help on using the changeset viewer.