src/core/net/sf/basedb/util/uri/UriMetadata.java

Code
Comments
Other
Rev Date Author Line
5582 15 Mar 11 nicklas 1 /**
5582 15 Mar 11 nicklas 2   $Id$
5582 15 Mar 11 nicklas 3
5582 15 Mar 11 nicklas 4   Copyright (C) 2011 Nicklas Nordborg
5582 15 Mar 11 nicklas 5
5582 15 Mar 11 nicklas 6   This file is part of BASE - BioArray Software Environment.
5582 15 Mar 11 nicklas 7   Available at http://base.thep.lu.se/
5582 15 Mar 11 nicklas 8
5582 15 Mar 11 nicklas 9   BASE is free software; you can redistribute it and/or
5582 15 Mar 11 nicklas 10   modify it under the terms of the GNU General Public License
5582 15 Mar 11 nicklas 11   as published by the Free Software Foundation; either version 3
5582 15 Mar 11 nicklas 12   of the License, or (at your option) any later version.
5582 15 Mar 11 nicklas 13
5582 15 Mar 11 nicklas 14   BASE is distributed in the hope that it will be useful,
5582 15 Mar 11 nicklas 15   but WITHOUT ANY WARRANTY; without even the implied warranty of
5582 15 Mar 11 nicklas 16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
5582 15 Mar 11 nicklas 17   GNU General Public License for more details.
5582 15 Mar 11 nicklas 18
5582 15 Mar 11 nicklas 19   You should have received a copy of the GNU General Public License
5582 15 Mar 11 nicklas 20   along with BASE. If not, see <http://www.gnu.org/licenses/>.
5582 15 Mar 11 nicklas 21 */
5582 15 Mar 11 nicklas 22 package net.sf.basedb.util.uri;
5582 15 Mar 11 nicklas 23
5582 15 Mar 11 nicklas 24 import java.net.URI;
5582 15 Mar 11 nicklas 25 import java.util.Date;
5582 15 Mar 11 nicklas 26
5582 15 Mar 11 nicklas 27 /**
5582 15 Mar 11 nicklas 28   Holds metadata about the data referenced by given URI. All metadata
5582 15 Mar 11 nicklas 29   information is optional and clients should be prepared to handle
5582 15 Mar 11 nicklas 30   it.
5582 15 Mar 11 nicklas 31
5582 15 Mar 11 nicklas 32   @author Nicklas
5582 15 Mar 11 nicklas 33   @since 3.0
5582 15 Mar 11 nicklas 34   @base.modified $Date$
5582 15 Mar 11 nicklas 35 */
5582 15 Mar 11 nicklas 36 public class UriMetadata
5582 15 Mar 11 nicklas 37 {
5582 15 Mar 11 nicklas 38
5582 15 Mar 11 nicklas 39   private final URI uri;
5582 15 Mar 11 nicklas 40   private Long length;
5582 15 Mar 11 nicklas 41   private Date lastModified;
5582 15 Mar 11 nicklas 42   private String mimeType;
5582 15 Mar 11 nicklas 43   private String charset;
5582 15 Mar 11 nicklas 44   private String md5;
5582 15 Mar 11 nicklas 45   
5582 15 Mar 11 nicklas 46   /**
5582 15 Mar 11 nicklas 47     Create an empty metadata object for the given URI.
5582 15 Mar 11 nicklas 48     @param uri The URI that defines the referenced resource
5582 15 Mar 11 nicklas 49   */
5582 15 Mar 11 nicklas 50   public UriMetadata(URI uri)
5582 15 Mar 11 nicklas 51   {
5582 15 Mar 11 nicklas 52     this.uri = uri;
5582 15 Mar 11 nicklas 53   }
5582 15 Mar 11 nicklas 54   
5582 15 Mar 11 nicklas 55   /**
5582 15 Mar 11 nicklas 56     Get the length in bytes of the resource. 
5582 15 Mar 11 nicklas 57     @return The size in bytes or null if not known
5582 15 Mar 11 nicklas 58   */
5582 15 Mar 11 nicklas 59   public Long getLength()
5582 15 Mar 11 nicklas 60   {
5582 15 Mar 11 nicklas 61     return length;
5582 15 Mar 11 nicklas 62   }
5582 15 Mar 11 nicklas 63   public void setLength(Long length)
5582 15 Mar 11 nicklas 64   {
5582 15 Mar 11 nicklas 65     this.length = length;
5582 15 Mar 11 nicklas 66   }
5582 15 Mar 11 nicklas 67   
5582 15 Mar 11 nicklas 68   /**
5582 15 Mar 11 nicklas 69     Get the date and time the resource was last modified.
5582 15 Mar 11 nicklas 70     @return A date or null if not known
5582 15 Mar 11 nicklas 71   */
5582 15 Mar 11 nicklas 72   public Date getLastModified()
5582 15 Mar 11 nicklas 73   {
5582 15 Mar 11 nicklas 74     return lastModified;
5582 15 Mar 11 nicklas 75   }
5582 15 Mar 11 nicklas 76   public void setLastModified(Date lastModified)
5582 15 Mar 11 nicklas 77   {
5582 15 Mar 11 nicklas 78     this.lastModified = lastModified;
5582 15 Mar 11 nicklas 79   }
5582 15 Mar 11 nicklas 80
5582 15 Mar 11 nicklas 81   /**
5582 15 Mar 11 nicklas 82     Get the MIME type of the resource.
5582 15 Mar 11 nicklas 83     @return A string or null if not known
5582 15 Mar 11 nicklas 84   */
5582 15 Mar 11 nicklas 85   public String getMimeType()
5582 15 Mar 11 nicklas 86   {
5582 15 Mar 11 nicklas 87     return mimeType;
5582 15 Mar 11 nicklas 88   }
5582 15 Mar 11 nicklas 89   public void setMimeType(String mimeType)
5582 15 Mar 11 nicklas 90   {
5582 15 Mar 11 nicklas 91     this.mimeType = mimeType;
5582 15 Mar 11 nicklas 92   }
5582 15 Mar 11 nicklas 93   
5582 15 Mar 11 nicklas 94   /**
5582 15 Mar 11 nicklas 95     Get the character set used by the resource.
5582 15 Mar 11 nicklas 96     @return A string or null if not known
5582 15 Mar 11 nicklas 97   */
5582 15 Mar 11 nicklas 98   public String getCharacterSet()
5582 15 Mar 11 nicklas 99   {
5582 15 Mar 11 nicklas 100     return charset;
5582 15 Mar 11 nicklas 101   }
5582 15 Mar 11 nicklas 102   public void setCharacterSet(String charset)
5582 15 Mar 11 nicklas 103   {
5582 15 Mar 11 nicklas 104     this.charset = charset;
5582 15 Mar 11 nicklas 105   }
5582 15 Mar 11 nicklas 106   
5582 15 Mar 11 nicklas 107   /**
5582 15 Mar 11 nicklas 108     Get the MD5 checksum of the resource.
5582 15 Mar 11 nicklas 109     @return A string or null if not known
5582 15 Mar 11 nicklas 110   */
5582 15 Mar 11 nicklas 111   public String getMd5()
5582 15 Mar 11 nicklas 112   {
5582 15 Mar 11 nicklas 113     return md5;
5582 15 Mar 11 nicklas 114   }
5582 15 Mar 11 nicklas 115   public void setMd5(String md5)
5582 15 Mar 11 nicklas 116   {
5582 15 Mar 11 nicklas 117     this.md5 = md5;
5582 15 Mar 11 nicklas 118   }
5582 15 Mar 11 nicklas 119   
5582 15 Mar 11 nicklas 120   
5582 15 Mar 11 nicklas 121 }