Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (c) 2014 Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany.
   * All rights reserved. This program and the accompanying materials
   * are made available under the terms of the Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0)
   * which accompanies this distribution, and is available at http://creativecommons.org/licenses/by-nd/4.0/
   *
   * Contributors:
   *      Leibniz Institute of Plant Genetics and Crop Plant Research (IPK), Gatersleben, Germany - RMI Client, FileChooser and WebDAV
   */
 package de.ipk_gatersleben.bit.bi.edal.webdav.wrapper.primary_data;
 
 import java.util.Map;
 
 
A resource representing a virtual PrimaryDataFile.

Author(s):
jinbo
 
 
 		implements GetableResource {
 
 	// the primary data represented by this resource
 	// revision of the version represented by this resource
 	// this is used for sending the right content of virtual version files
 	private long version;
 	// the name of this resource
 	private String name;
 
 	public PrimaryDataFileVirtualResource(String pathlong revision,
 			FileSystemHandler fileSystemHandlerthrows RemoteException,
 		super(pathfileSystemHandler);
 		this. = revision;
 		if ( != null) {
 			ClientPrimaryDataEntityVersion v = FileSystemHandler.getVersion(
 			try {
 				this. = v.getMetaData()
 			} catch (MetaDataException e) {
 				this. = .getName();
 				..error("Failed to get name of: " + 
 						+ "\nReason" + e.toString());
 			}
 		}
 	}
 
 	public boolean authorise(Request requestMethod methodAuth auth) {
 		boolean b = super.authorise(requestmethodauth);
 		if ( != null) {
 			try {
 				this. = this..getName();
 			} catch (RemoteException e) {
 						.fatal("Failed to load/initialize FileSystemHandler: "
 								+ e.getMessage());
 			}
 		}
 		return b;
 	}

Returns the file name for a virtual version file. Pattern: filename.v[0-9].file-extension Example: test.v1.xml

Returns:
the file name for a virtual version file.
	public String getName() {
		Pattern p = Pattern.compile("(.*)\\.([^\\.]*)$");
		Matcher m = p.matcher();
		if (m.matches()) {
			// TODO handle files without extension
			return m.group(1) + ".v" +  + "." + m.group(2);
		}
		return ;
	}

Sends the content of a virtual version file to a requesting client.
	public void sendContent(final OutputStream outRange range,
			Map<StringStringparamsString contentTypethrows IOException,
		try {
			.read(out);
catch (PrimaryDataFileException e) {
			..error("Failed to send content of: " + 
"\nReason" + e.toString());
catch (AccessControlException e) {
			..error("Failed to send content of: " + 
"\nReason" + e.toString());
			..error("Failed to send content of: " + 
"\nReason" + e.toString());
		}
	}
	public Long getContentLength() {
		DataSize size = null;
		try {
			/*
			 * size = file.getCurrentVersion().getMetaData().getElementValue(
			 * EnumDublinCoreElements.SIZE);
			 */
catch (RemoteException e) {
			..error("Failed to get content-length of: "
 + "\nReason" + e.toString());
catch (MetaDataException e) {
			..error("Failed to get content-length of: "
 + "\nReason" + e.toString());
catch (AccessControlException e) {
			..error("Failed to get content-length of: "
 + "\nReason" + e.toString());
		}
		return size.getFileSize();
	}
	public String getContentType(String accepts) {
		String type = "default";
		try {
			type = dataType.getMimeType();
			return type;
catch (RemoteException e) {
			..error("Failed to get content-type of: "
 + "\nReason" + e.toString());
catch (MetaDataException e) {
			..error("Failed to get content length of: "
 + "\nReason" + e.toString());
		}
		return type;
	}
	public Long getMaxAgeSeconds(Auth auth) {
		return null;
	}
New to GrepCode? Check out our FAQ X