com.eviware.soapui.impl.wsdl.submit.transports.http.support.methods.ExtendedHeadMethod.java Source code

Java tutorial

Introduction

Here is the source code for com.eviware.soapui.impl.wsdl.submit.transports.http.support.methods.ExtendedHeadMethod.java

Source

/*
 *  soapUI, copyright (C) 2004-2012 smartbear.com 
 *
 *  soapUI is free software; you can redistribute it and/or modify it under the 
 *  terms of version 2.1 of the GNU Lesser General Public License as published by 
 *  the Free Software Foundation.
 *
 *  soapUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without 
 *  even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
 *  See the GNU Lesser General Public License for more details at gnu.org.
 */

package com.eviware.soapui.impl.wsdl.submit.transports.http.support.methods;

import java.io.IOException;

import javax.net.ssl.SSLSession;

import org.apache.commons.httpclient.util.EncodingUtil;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpHead;

import com.eviware.soapui.impl.rest.RestRequestInterface;
import com.eviware.soapui.impl.wsdl.submit.transports.http.ExtendedHttpMethod;
import com.eviware.soapui.impl.wsdl.submit.transports.http.HttpMethodSupport;
import com.eviware.soapui.impl.wsdl.submit.transports.http.SSLInfo;
import com.eviware.soapui.impl.wsdl.submit.transports.http.support.metrics.SoapUIMetrics;

/**
 * Extended PostMethod that supports limiting of response size and detailed
 * timestamps
 * 
 * @author Ole.Matzura
 */

public final class ExtendedHeadMethod extends HttpHead implements ExtendedHttpMethod {
    private HttpMethodSupport httpMethodSupport;

    public ExtendedHeadMethod() {
        httpMethodSupport = new HttpMethodSupport();
    }

    public String getDumpFile() {
        return httpMethodSupport.getDumpFile();
    }

    public void setDumpFile(String dumpFile) {
        httpMethodSupport.setDumpFile(dumpFile);
    }

    public boolean hasResponse() {
        return httpMethodSupport.hasResponse();
    }

    public void afterReadResponse(SSLSession session) {
        httpMethodSupport.afterReadResponse(session);
    }

    @Override
    public String getResponseCharSet() {
        return httpMethodSupport.getResponseCharset();
    }

    public HttpEntity getRequestEntity() {
        return null;
    }

    public long getMaxSize() {
        return httpMethodSupport.getMaxSize();
    }

    public void setMaxSize(long maxSize) {
        httpMethodSupport.setMaxSize(maxSize);
    }

    public long getResponseReadTime() {
        return httpMethodSupport.getResponseReadTime();
    }

    public long getResponseReadTimeNanos() {
        return httpMethodSupport.getResponseReadTimeNanos();
    }

    public void afterWriteRequest() {
        httpMethodSupport.afterWriteRequest();
    }

    public void initStartTime() {
        httpMethodSupport.initStartTime();
    }

    public long getTimeTaken() {
        return httpMethodSupport.getTimeTaken();
    }

    public long getStartTime() {
        return httpMethodSupport.getStartTime();
    }

    public SSLInfo getSSLInfo() {
        return httpMethodSupport.getSSLInfo();
    }

    public String getResponseContentType() {
        return httpMethodSupport.getResponseContentType();
    }

    public String getMethod() {
        return RestRequestInterface.RequestMethod.HEAD.toString();
    }

    public Throwable getFailureCause() {
        return httpMethodSupport.getFailureCause();
    }

    public boolean isFailed() {
        return httpMethodSupport.isFailed();
    }

    public void setFailed(Throwable t) {
        httpMethodSupport.setFailed(t);
    }

    public byte[] getDecompressedResponseBody() throws IOException {
        return httpMethodSupport.getDecompressedResponseBody();
    }

    public void setDecompress(boolean decompress) {
        httpMethodSupport.setDecompress(decompress);
    }

    public void setHttpResponse(HttpResponse httpResponse) {
        httpMethodSupport.setHttpResponse(httpResponse);
    }

    public HttpResponse getHttpResponse() {
        return httpMethodSupport.getHttpResponse();
    }

    public boolean hasHttpResponse() {
        return httpMethodSupport.hasHttpResponse();
    }

    public byte[] getResponseBody() throws IOException {
        return httpMethodSupport.getResponseBody();
    }

    public String getResponseBodyAsString() throws IOException {
        byte[] rawdata = getResponseBody();
        if (rawdata != null) {
            return EncodingUtil.getString(rawdata, getResponseCharSet());
        } else {
            return null;
        }
    }

    public SoapUIMetrics getMetrics() {
        return httpMethodSupport.getMetrics();
    }
}