Mercurial > hg > LGDataverses
diff src/main/java/edu/harvard/iq/dataverse/DatasetLock.java @ 10:a50cf11e5178
Rewrite LGDataverse completely upgrading to dataverse4.0
| author | Zoe Hong <zhong@mpiwg-berlin.mpg.de> |
|---|---|
| date | Tue, 08 Sep 2015 17:00:21 +0200 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/main/java/edu/harvard/iq/dataverse/DatasetLock.java Tue Sep 08 17:00:21 2015 +0200 @@ -0,0 +1,130 @@ +/* + Copyright (C) 2005-2012, by the President and Fellows of Harvard College. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + Dataverse Network - A web application to share, preserve and analyze research data. + Developed at the Institute for Quantitative Social Science, Harvard University. + Version 3.0. +*/ + +package edu.harvard.iq.dataverse; + +import edu.harvard.iq.dataverse.authorization.users.AuthenticatedUser; +import java.util.Date; +import java.io.Serializable; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.OneToOne; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; + +/** + * + * @author Leonid Andreev + */ +@Entity +public class DatasetLock implements Serializable { + private static final long serialVersionUID = 1L; + + public DatasetLock() { + } + + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; + + @Temporal(value = TemporalType.TIMESTAMP) + private Date startTime; + + @OneToOne + @JoinColumn(nullable=false) + private Dataset dataset; + + @ManyToOne + @JoinColumn(nullable=false) + private AuthenticatedUser user; + + private String info; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + + public Dataset getDataset() { + return dataset; + } + + public void setDataset(Dataset dataset) { + this.dataset = dataset; + } + + + public AuthenticatedUser getUser() { + return user; + } + + public void setUser(AuthenticatedUser user) { + this.user = user; + } + + + public String getInfo() { + return info; + } + + public void setInfo(String info) { + this.info = info; + } + + + @Override + public int hashCode() { + int hash = 0; + hash += (id != null ? id.hashCode() : 0); + return hash; + } + + @Override + public boolean equals(Object object) { + if (!(object instanceof DatasetLock)) { + return false; + } + DatasetLock other = (DatasetLock) object; + return !((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))); + } + + @Override + public String toString() { + return "edu.harvard.iq.dataverse.DatasetLock[ id=" + id + " ]"; + } + +}
