| /******************************************************************************* |
| * Copyright (c) 2002-2005 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM - Initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.wst.wsi.internal.profile.validator; |
| |
| import org.eclipse.wst.wsi.internal.WSIException; |
| import org.eclipse.wst.wsi.internal.analyzer.AnalyzerContext; |
| import org.eclipse.wst.wsi.internal.log.MessageEntry; |
| import org.eclipse.wst.wsi.internal.log.MimePart; |
| import org.eclipse.wst.wsi.internal.report.Entry; |
| import org.eclipse.wst.wsi.internal.util.EntryType; |
| import org.eclipse.wst.wsi.internal.wsdl.WSDLDocument; |
| import org.eclipse.wst.wsi.internal.xml.XMLUtils; |
| |
| import org.w3c.dom.Document; |
| |
| /** |
| * This class contains the target information needed by a test assertion. |
| * |
| * @version 1.0.1 |
| * @author Peter Brittenham (peterbr@us.ibm.com) |
| * @author Graham Turrell (gturrell@uk.ibm.com) |
| */ |
| public class EntryContext |
| { |
| protected Entry entry = null; |
| |
| protected MessageEntry request = null; |
| protected MessageEntry response = null; |
| protected MessageEntry messageEntry = null; |
| |
| protected Document requestDocument = null; |
| protected Document responseDocument = null; |
| protected Document messageEntryDocument = null; |
| |
| protected WSDLDocument wsdlDocument = null; |
| |
| protected AnalyzerContext analyzerContext = null; |
| |
| /** |
| * Create entry context. |
| * @param entry a message entry. |
| * @param request the request. |
| * @param response the response. |
| */ |
| public EntryContext(Entry entry, MessageEntry request, MessageEntry response) |
| { |
| this(entry, request, response, null); |
| } |
| |
| /** |
| * Create entry context. |
| * @param entry a message entry. |
| * @param request the request. |
| * @param response the response. |
| * @param analyzerContext the analyzerContext. |
| */ |
| public EntryContext( |
| Entry entry, |
| MessageEntry request, |
| MessageEntry response, |
| AnalyzerContext analyzerContext) |
| { |
| this.entry = entry; |
| this.request = request; |
| this.response = response; |
| this.analyzerContext = analyzerContext; |
| |
| try |
| { |
| // Parse all documents |
| if(request.isMimeContent()) |
| { |
| MimePart part = request.getMimeParts().getRootPart(); |
| if ((part != null) && (part.getContent().length() > 0)) |
| requestDocument = XMLUtils.parseXML(part.getContent()); |
| } |
| else |
| { |
| if (request.getMessage().length() > 0) |
| requestDocument = XMLUtils.parseXML(request.getMessage()); |
| } |
| |
| if(response.isMimeContent()) |
| { |
| MimePart part = response.getMimeParts().getRootPart(); |
| if ((part != null) && (part.getContent().length() > 0)) |
| responseDocument = XMLUtils.parseXML(part.getContent()); |
| } |
| else |
| { |
| if (response.getMessage().length() > 0) |
| responseDocument = XMLUtils.parseXML(response.getMessage()); |
| } |
| } |
| |
| catch (WSIException we) |
| { |
| } |
| |
| // need some exception handling in here and more careful checking |
| if (entry.getEntryType().equals(EntryType.ENTRY_TYPE_REQUEST)) |
| { |
| this.messageEntry = request; |
| this.messageEntryDocument = requestDocument; |
| } |
| else |
| { |
| this.messageEntry = response; |
| this.messageEntryDocument = responseDocument; |
| } |
| } |
| |
| /** |
| * Create entry context. |
| * @param entry a message entry. |
| * @param wsdlDocument a WSDL document. |
| */ |
| public EntryContext(Entry entry, WSDLDocument wsdlDocument) |
| { |
| this.entry = entry; |
| this.wsdlDocument = wsdlDocument; |
| } |
| |
| /** |
| * Create entry context. |
| * @param entry a message entry. |
| * @param analyzerContext the analyzerContext. |
| */ |
| public EntryContext(Entry entry, AnalyzerContext analyzerContext) |
| { |
| this.entry = entry; |
| this.analyzerContext = analyzerContext; |
| } |
| |
| /** |
| * Returns the entry. |
| * @return the entry. |
| */ |
| public Entry getEntry() |
| { |
| return this.entry; |
| } |
| |
| /** |
| * Returns the request. |
| * @return the request. |
| */ |
| public MessageEntry getRequest() |
| { |
| return request; |
| } |
| |
| /** |
| * Returns the response. |
| * @return the response. |
| */ |
| public MessageEntry getResponse() |
| { |
| return response; |
| } |
| |
| /** |
| * Returns the log entry which is not null. |
| * @return the log entry. |
| */ |
| public MessageEntry getMessageEntry() |
| { |
| return messageEntry; |
| } |
| |
| /** |
| * Returns the request. |
| * @return MessageEntry |
| */ |
| public Document getRequestDocument() |
| { |
| return requestDocument; |
| } |
| |
| /** |
| * Returns the response. |
| * @return the response. |
| */ |
| public Document getResponseDocument() |
| { |
| return responseDocument; |
| } |
| |
| /** |
| * Returns the log entry which is not null. |
| * @return the log entry. |
| */ |
| public Document getMessageEntryDocument() |
| { |
| return messageEntryDocument; |
| } |
| |
| /** |
| * Returns the WSDL document. |
| * @return the WSDL document. |
| */ |
| public WSDLDocument getWSDLDocument() |
| { |
| return wsdlDocument; |
| } |
| |
| /** |
| * Returns analyzerContext. |
| * @return analyzerContext |
| */ |
| public AnalyzerContext getAnalyzerContext() |
| { |
| return this.analyzerContext; |
| } |
| } |