1 package com.ibm.webdav.protocol.http; 2 3 17 import java.io.*; 18 import java.util.logging.*; 19 20 import javax.servlet.http.*; 21 22 import com.ibm.webdav.*; 23 24 25 28 public class GetMethod extends WebDAVMethod { 29 30 private static Logger m_logger = Logger.getLogger(GetMethod.class.getName()); 31 32 33 39 public GetMethod(HttpServletRequest request, HttpServletResponse response) 40 throws WebDAVException { 41 super(request, response); 42 methodName = "GET"; 43 } 44 45 48 public WebDAVStatus execute() { 49 try { 50 InputStream is = resource.getContentsInputStream(context); 51 52 53 setStatusCode(WebDAVStatus.SC_OK); 58 setResponseHeaders(); 59 60 int length = (int) context.getResponseContext().contentLength(); 62 String mimeType = context.getResponseContext().contentType(); 63 copy(is, response, length, mimeType); 64 is.close(); 65 } catch (WebDAVException exc) { 66 m_logger.log(Level.INFO, exc.getLocalizedMessage() + " - " + request.getQueryString()); 67 setStatusCode(exc.getStatusCode()); 68 } catch (Exception exc) { 69 m_logger.log(Level.WARNING, exc.getMessage(), exc); 70 setStatusCode(WebDAVStatus.SC_INTERNAL_SERVER_ERROR); 71 } 72 73 return context.getStatusCode(); 74 } 75 } | Popular Tags |