1 /* 2 * Copyright (c) 2006-2007 Creative Sphere Limited. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * 10 * Creative Sphere - initial API and implementation 11 * 12 */ 13 package org.abstracthorizon.danube.webdav.java.properties; 14 15 import org.abstracthorizon.danube.webdav.ResourceAdapter; 16 import org.abstracthorizon.danube.webdav.xml.XMLParserHandler; 17 import org.abstracthorizon.danube.webdav.xml.dav.response.properties.ResponseProperty; 18 19 /** 20 * 21 * This class obtains content length from given resource 22 * 23 * @author Daniel Sendula 24 * 25 */ 26 public class GetContentLength extends org.abstracthorizon.danube.webdav.xml.dav.request.properties.GetContentLength { 27 28 /** 29 * Constructor 30 * @param parent 31 */ 32 public GetContentLength(XMLParserHandler parent) { 33 super(parent); 34 } 35 36 /** 37 * Sets the property 38 * @param webDAVAdapter DAV adapter 39 * @param resource resource 40 * @return response property 41 */ 42 public ResponseProperty processSetProperty(ResourceAdapter webDAVAdapter, Object resource) { 43 long newLength = getContentLength(); 44 if (newLength >= 0) { 45 // File file = (File)resource; 46 // try { 47 // RandomAccessFile raf = new RandomAccessFile(file, "rw"); 48 // long oldLength = raf.length(); 49 // if (newLength != oldLength) { 50 // raf.setLength(newLength); 51 // File f = new File(file.getParentFile(), file.getName()); 52 // if (newLength == f.length()) { 53 // return processResponse(webDAVAdapter, file); 54 // } 55 // } 56 // } catch (IOException e) { 57 // 58 // } 59 // return constructResponse(Status.FORBIDDEN); 60 return super.processSetProperty(webDAVAdapter, resource); 61 } else { 62 return super.processSetProperty(webDAVAdapter, resource); 63 } 64 } 65 } 66