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.mock.WsdlMockResponse;
20: import com.eviware.soapui.impl.wsdl.submit.transports.http.AttachmentUtils;
21:
22: /**
23: * Attachment for a WsdlMockResponse
24: *
25: * @author Ole.Matzura
26: */
27:
28: public class MockFileAttachment extends FileAttachment {
29: private final WsdlMockResponse mockResponse;
30:
31: public MockFileAttachment(AttachmentConfig config,
32: WsdlMockResponse mockResponse) {
33: super (config);
34: this .mockResponse = mockResponse;
35: }
36:
37: public MockFileAttachment(File file, boolean cache,
38: WsdlMockResponse response) throws IOException {
39: super (file, cache, response.getConfig().addNewAttachment());
40: mockResponse = response;
41: }
42:
43: @Override
44: public AttachmentType getAttachmentType() {
45: if (getPart() == null
46: || mockResponse.getAttachmentPart(getPart()) == null)
47: return AttachmentType.UNKNOWN;
48: else
49: return mockResponse.getAttachmentPart(getPart())
50: .getAttachmentType();
51: }
52:
53: public AttachmentEncoding getEncoding() {
54: if (mockResponse.isEncodeAttachments()) {
55: return AttachmentUtils
56: .getAttachmentEncoding(mockResponse
57: .getMockOperation().getOperation(),
58: getPart(), true);
59: } else {
60: return AttachmentEncoding.NONE;
61: }
62: }
63: }
|