01: /*
02: * soapUI, copyright (C) 2004-2007 eviware.com
03: *
04: * soapUI is free software; you can redistribute it and/or modify it under the
05: * terms of version 2.1 of the GNU Lesser General Public License as published by
06: * the Free Software Foundation.
07: *
08: * soapUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
09: * even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10: * See the GNU Lesser General Public License for more details at gnu.org.
11: */
12:
13: package com.eviware.soapui.impl.wsdl.support;
14:
15: import java.io.File;
16: import java.io.IOException;
17:
18: import com.eviware.soapui.config.AttachmentConfig;
19: import com.eviware.soapui.impl.wsdl.WsdlRequest;
20: import com.eviware.soapui.impl.wsdl.submit.transports.http.AttachmentUtils;
21:
22: /**
23: * Attachment for a WsdlRequest
24: *
25: * @author ole.matzura
26: */
27:
28: public class RequestFileAttachment extends FileAttachment {
29: private final WsdlRequest request;
30:
31: public RequestFileAttachment(AttachmentConfig config,
32: WsdlRequest request) {
33: super (config);
34: this .request = request;
35: }
36:
37: public RequestFileAttachment(File file, boolean cache,
38: WsdlRequest request) throws IOException {
39: super (file, cache, request.getConfig().addNewAttachment());
40: this .request = request;
41: }
42:
43: public AttachmentEncoding getEncoding() {
44: if (request.isEncodeAttachments())
45: return AttachmentUtils.getAttachmentEncoding(request
46: .getOperation(), getPart(), false);
47: else
48: return AttachmentEncoding.NONE;
49: }
50:
51: @Override
52: public AttachmentType getAttachmentType() {
53: if (request == null || getPart() == null
54: || request.getAttachmentPart(getPart()) == null)
55: return AttachmentType.UNKNOWN;
56: else
57: return request.getAttachmentPart(getPart())
58: .getAttachmentType();
59: }
60: }
|