You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ba...@apache.org on 2008/04/24 22:43:01 UTC
svn commit: r651412 -
/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/
Author: barrettj
Date: Thu Apr 24 13:42:53 2008
New Revision: 651412
URL: http://svn.apache.org/viewvc?rev=651412&view=rev
Log:
Comment-only changes: Remove obsolete and resolved actionable comments
Modified:
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointDescriptionImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/OperationDescriptionImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ParameterDescriptionImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java?rev=651412&r1=651411&r2=651412&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/DescriptionFactoryImpl.java Thu Apr 24 13:42:53 2008
@@ -395,17 +395,12 @@
* @param serviceImplName
* @return List<>
*/
+ // TODO: (JLB) Remove unreferenced method
private static List<DescriptionBuilderComposite> buildRelevantCompositeList(
List<DescriptionBuilderComposite> compositeList,
String serviceImplName) {
List<DescriptionBuilderComposite> relevantList = compositeList;
-
- // TODO: Find the composite which represents this serviceImplName
-
- // TODO: Go through input list to find composites relevant to this one
- // and add
- // to 'relevant list'
return relevantList;
}
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointDescriptionImpl.java?rev=651412&r1=651411&r2=651412&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointDescriptionImpl.java Thu Apr 24 13:42:53 2008
@@ -90,7 +90,6 @@
/** @see ../EndpointDescription */
/*
- * TODO: EndpointDescription should be created via AxisService objects and not directly from WSDL
* IMPORTANT NOTE: Axis2 currently only supports 1 service and 1 port under that service. When that is
* fixed, that will probably have an impact on this class. In particular, I think this should be created
* somehow from an AxisService/AxisPort combination, and not directly from the WSDL.
@@ -220,8 +219,6 @@
DescriptionBuilderComposite sparseComposite,
Object sparseCompositeKey) {
- // TODO: This and the other constructor will (eventually) take the same args, so the logic needs to be combined
- // TODO: If there is WSDL, could compare the namespace of the defn against the portQName.namespace
this.parentServiceDescription = parent;
composite = new DescriptionBuilderComposite();
composite.setSparseComposite(sparseCompositeKey, sparseComposite);
@@ -252,7 +249,6 @@
throw ExceptionFactory.makeWebServiceException(msg);
}
- // TODO: Refactor this with the consideration of no WSDL/Generic Service/Annotated SEI
setupAxisService();
addToAxisService();
setupReleaseResources(getServiceDescription().getAxisConfigContext());
@@ -315,9 +311,6 @@
// set properties map
this.properties = properties;
-
- // TODO: This and the other constructor will (eventually) take the same args, so the logic needs to be combined
- // TODO: If there is WSDL, could compare the namespace of the defn against the portQName.namespace
this.parentServiceDescription = parent;
this.serviceImplName = serviceImplName;
@@ -345,7 +338,6 @@
customAnnotations.addAll(composite.getCustomAnnotationInstances());
customAnnotationProcessors.putAll(composite.getCustomAnnotationProcessors());
- // REVIEW: Maybe this should be an error if the name has already been set and it doesn't match
// Note that on the client side, the service QN should be set; on the server side it will not be.
if (DescriptionUtils.isEmpty(getServiceDescription().getServiceQName())) {
getServiceDescriptionImpl().setServiceQName(getServiceQName());
@@ -353,16 +345,9 @@
//Call the getter to insure the qualified port name is set.
getPortQName();
- // TODO: Refactor this with the consideration of no WSDL/Generic Service/Annotated SEI
setupAxisServiceFromDBL();
addToAxisService(); //Add a reference to this EndpointDescription to the AxisService
- //TODO: Need to remove operations from AxisService that have 'exclude = true
- // then call 'validateOperations' to verify that WSDL and AxisService match up,
- // Remember that this will only happen when we generate an AxisService from existing
- // WSDL and then need to perform further processing because we have annotations as well
- // If there is no WSDL, we would never process the Method to begin with.
-
buildDescriptionHierachy();
WsdlComposite wsdlComposite = null;
@@ -380,8 +365,6 @@
// generate WSDL if the binding type is not SOAP 1.1 based.
// Then, assuming the composite does not contain a
// Wsdl Definition, go ahead and generate it
- // REVIEW: I think this should this be isSOAP11 so the generators are only called for
- // SOAP11; i.e. NOT for SOAP12 or XML/HTTP bindings.
if (isSOAP11){
if (
(isEndpointBased() &&
@@ -572,7 +555,6 @@
Parameter parameter = new Parameter();
parameter.setName(EndpointDescription.AXIS_SERVICE_PARAMETER);
parameter.setValue(this);
- // TODO: What to do if AxisFault
try {
axisService.addParameter(parameter);
} catch (AxisFault e) {
@@ -601,9 +583,6 @@
// If portName was specified, set it. Otherwise, we will get it from the appropriate
// annotation when the getter is called.
- // TODO: If the portName is specified, should we verify it against the annotation?
- // TODO: Add tests: null portName, !null portName, portName != annotation value
- // TODO: Get portName from annotation if it is null.
// If this is an Endpoint-based service implementation (i.e. not a
// Provider-based one), then create the EndpointInterfaceDescription to contain
@@ -611,8 +590,6 @@
// associated with them, so they don't have an EndpointInterfaceDescription.
if (webServiceAnnotation != null) {
// If this impl class references an SEI, then use that SEI to create the EndpointInterfaceDesc.
- // TODO: Add support for service impl endpoints that don't reference an SEI; remember
- // that this is also called with just an SEI interface from svcDesc.updateWithSEI()
String seiClassName = getAnnoWebServiceEndpointInterface();
if (!composite.isServiceProvider()) {
@@ -620,10 +597,9 @@
if (DescriptionUtils.isEmpty(seiClassName)) {
// This is the client code path; the @WebServce will not have an endpointInterface member
// For now, just build the EndpointInterfaceDesc based on the class itself.
- // TODO: The EID ctor doesn't correctly handle anything but an SEI at this
- // point; e.g. it doesn't publish the correct methods of just an impl.
seiClass = composite.getCorrespondingClass();
} else {
+ // TODO: (JLB) This should be removed; it was for server-side introspection code
// This is the deprecated server-side introspection code for an impl that references an SEI
try {
// TODO: Using Class forName() is probably not the best long-term way to get the SEI class from the annotation
@@ -639,12 +615,8 @@
}
endpointInterfaceDescription = new EndpointInterfaceDescriptionImpl(seiClass, this);
} else {
- //TODO: Determine if we need logic here to determine implied SEI or not. This logic
- // may be handled by EndpointInterfaceDescription
-
if (DescriptionUtils.isEmpty(getAnnoWebServiceEndpointInterface())) {
- //TODO: Build the EndpointInterfaceDesc based on the class itself
endpointInterfaceDescription =
new EndpointInterfaceDescriptionImpl(composite, true, this);
@@ -677,15 +649,11 @@
}
public QName getPortQName() {
- // REVIEW: Implement WSDL/Annotation merge? May be OK as is; not sure how would know WHICH port Qname to get out of the WSDL if
- // we didn't use annotations.
if (portQName == null) {
// The name was not set by the constructors, so get it from the
// appropriate annotation.
String name = getAnnoWebServicePortName();
String tns = getAnnoWebServiceTargetNamespace();
-
- // TODO: Check for name &/| tns null or empty string and add tests for same
portQName = new QName(tns, name);
}
return portQName;
@@ -753,7 +721,6 @@
}
private void setupAxisService() {
- // TODO: Need to use MetaDataQuery validator to merge WSDL (if any) and annotations (if any)
// Build up the AxisService. Note that if this is a dynamic port, then we don't use the
// WSDL to build up the AxisService since the port added to the Service by the client is not
// one that will be present in the WSDL. A null class passed in as the SEI indicates this
@@ -814,7 +781,6 @@
*
*/
private void setupAxisServiceFromDBL() {
- // TODO: Need to use MetaDataQuery validator to merge WSDL (if any) and annotations (if any)
// Build up the AxisService. Note that if this is a dispatch client, then we don't use the
// WSDL to build up the AxisService since the port added to the Service by the client is not
// one that will be present in the WSDL. A null class passed in as the SEI indicates this
@@ -875,7 +841,6 @@
boolean isBuiltFromWSDL = false;
try {
- // TODO: Change this to use WSDLToAxisServiceBuilder superclass
// Note that the axis service builder takes only the localpart of the port qname.
// TODO:: This should check that the namespace of the definition matches the namespace of the portQName per JAXRPC spec
@@ -893,8 +858,6 @@
}
if (composite.isServiceProvider()) {
-// if (getServiceDescriptionImpl().isDBCMap()) {
- //this.class.getClass().getClassLoader();
URIResolverImpl uriResolver =
new URIResolverImpl(composite.getClassLoader());
serviceBuilder.setCustomResolver(uriResolver);
@@ -909,9 +872,6 @@
serviceBuilder.setCustomResolver(uriResolver);
}
- // TODO: Currently this only builds the client-side AxisService;
- // it needs to do client and server somehow.
- // Patterned after AxisService.createClientSideAxisService
if (getServiceDescriptionImpl().isServerSide())
serviceBuilder.setServerSide(true);
else
@@ -957,8 +917,6 @@
isBuiltFromWSDL = true;
} catch (AxisFault e) {
- // REVIEW: If we couldn't use the WSDL, should we fail instead of continuing to process using annotations?
- // Note that if we choose to fail, we need to distinguish the partial WSDL case (which can not fail)
String wsdlLocation = (getServiceDescriptionImpl().getWSDLLocation() != null) ?
getServiceDescriptionImpl().getWSDLLocation().toString() : null;
String implClassName = composite.getClassName();
@@ -971,19 +929,15 @@
}
private void buildAxisServiceFromAnnotations() {
- // TODO: Refactor this to create from annotations.
String serviceName = null;
if (portQName != null) {
serviceName = createAxisServiceName();
} else {
- // REVIEW: Can the portQName ever be null?
// Make this service name unique. The Axis2 engine assumes that a service it can not find is a client-side service.
serviceName = ServiceClient.ANON_SERVICE + this.hashCode() + System.currentTimeMillis();
}
axisService = new AxisService(serviceName);
- //TODO: Set other things on AxisService here, this function may have to be
- // moved to after we create all the AxisOperations
}
private void releaseAxisServiceResources() {
@@ -1237,7 +1191,6 @@
} else {
// Default value per JSR-181 MR Sec 4.1 pg 15 defers to "Implementation defined,
// as described in JAX-WS 2.0, section 3.2" which is JAX-WS 2.0 Sec 3.2, pg 29.
- // FIXME: Hardcoded protocol for namespace
annotation_TargetNamespace =
DescriptionUtils.makeNamespaceFromPackageName(
DescriptionUtils.getJavaPackageName(composite.getClassName()),
@@ -1271,8 +1224,6 @@
webService_EndpointInterface = getAnnoWebService().endpointInterface();
} else {
// This element is not valid on a WebServiceProvider annotation
- // REVIEW: Is this a correct thing to return if this is called against a WebServiceProvier
- // which does not support this element?
webService_EndpointInterface = "";
}
}
@@ -1301,8 +1252,6 @@
}
} else {
// This element is not valid on a WebServiceProvider annotation
- // REVIEW: Is this a correct thing to return if this is called against a WebServiceProvier
- // which does not support this element?
webService_Name = "";
}
}
@@ -1321,7 +1270,6 @@
}
public Service.Mode getServiceMode() {
- // REVIEW: WSDL/Anno Merge
return getAnnoServiceModeValue();
}
@@ -1349,7 +1297,6 @@
}
public String getBindingType() {
- // REVIEW: Implement WSDL/Anno merge?
return getAnnoBindingTypeValue();
}
@@ -1471,7 +1418,6 @@
if (seic != null) {
handlerChainAnnotation = seic.getHandlerChainAnnot();
}
- //TODO else clause for if to throw exception when seic == null
}
}
} else {
@@ -1632,8 +1578,8 @@
// If a WSDL binding was found, we need to find the proper extensibility
// element and return the namespace. The namespace for the binding element will
- // determine whether it is SOAP 1.1 vs. SOAP 1.2 vs. HTTP (or other). If the namespace
- // indicates SOAP we then need to determine what the transport is (HTTP vs. JMS)
+ // determine whether it is SOAP 1.1 vs. SOAP 1.2 vs. HTTP (or other). If the namespace
+ // indicates SOAP we then need to determine what the transport is (HTTP vs. JMS)
// TODO: What do we do if no extensibility element exists?
List<ExtensibilityElement> elements = wsdlBinding.getExtensibilityElements();
Iterator<ExtensibilityElement> itr = elements.iterator();
@@ -1860,8 +1806,6 @@
// 1) Find the subset of all ports under the service that use the PortType represented by the SEI
// 2) From the subset in (1) find all those ports that specify a SOAP Address
// 3) Use the first port from (2)
- // REVIEW: Should we be looking at the binding type or something else to determin which subset of ports to use;
- // i.e. instead of just finding ports that specify a SOAP Address?
// Per JSR-181,
// - The portType name corresponds to the WebService.name annotation value, which is
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java?rev=651412&r1=651411&r2=651412&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java Thu Apr 24 13:42:53 2008
@@ -82,7 +82,6 @@
// ANNOTATION: @SOAPBinding
// Note this is the Type-level annotation. See OperationDescription for the Method-level annotation
private SOAPBinding soapBindingAnnotation;
- // TODO: Should this be using the jaxws annotation values or should that be wrappered?
private javax.jws.soap.SOAPBinding.Style soapBindingStyle;
// Default value per JSR-181 MR Sec 4.7 "Annotation: javax.jws.soap.SOAPBinding" pg 28
public static final javax.jws.soap.SOAPBinding.Style SOAPBinding_Style_DEFAULT =
@@ -194,6 +193,7 @@
* @param isClass
* @param parent
*/
+ // TODO: (JLB) isClass parameter is not used; can be removed.
EndpointInterfaceDescriptionImpl(DescriptionBuilderComposite dbc,
boolean isClass,
EndpointDescriptionImpl parent) {
@@ -201,12 +201,9 @@
parentEndpointDescription = parent;
this.dbc = dbc;
- //TODO: yikes! ...too much redirection, consider setting this in higher level
getEndpointDescription().getAxisService()
.setTargetNamespace(getEndpointDescriptionImpl().getTargetNamespace());
- //TODO: Determine if the isClass parameter is really necessary
-
// Per JSR-181 all methods on the SEI are mapped to operations regardless
// of whether they include an @WebMethod annotation. That annotation may
// be present to customize the mapping, but is not required (p14)
@@ -225,7 +222,6 @@
while (iter.hasNext()) {
mdc = iter.next();
- //TODO: Verify that this classname is truly always the wrapper class
mdc.setDeclaringClass(dbc.getClassName());
// Only add if it is a method that would be or is in the WSDL i.e.
@@ -258,14 +254,6 @@
if (log.isDebugEnabled())
log.debug("EndpointInterfaceDescriptionImpl: Finished Adding operations");
- //TODO: Need to process the other annotations that can exist, on the server side
- // and at the class level.
- // They are, as follows:
- // HandlerChain (181)
- // SoapBinding (181)
- // WebServiceRefAnnot (List) (JAXWS)
- // BindingTypeAnnot (JAXWS Sec. 7.8 -- Used to set either the AS.endpoint, or AS.SoapNSUri)
- // WebServiceContextAnnot (JAXWS via injection)
}
@@ -347,7 +335,6 @@
// (3) If an operationDesc does exist and has a java method set on it already, add a new one.
//
// TODO: May need to change when Axis2 supports overloaded WSDL operations
- // TODO: May need to change when ServiceDescription can build an AxisService from annotations
// Get the QName for this java method and then update (or add) the appropriate OperationDescription
// See comments below for imporant notes about the current implementation.
@@ -361,8 +348,6 @@
// which are defined on the SEI are not defined as operations in the WSDL.
// Although they usually specific the same OperationName as the WSDL operation,
// there may be cases where they do not.
- // TODO: Is this path an error path, or can the async methods specify different operation names than the
- // WSDL operation?
OperationDescription operation = new OperationDescriptionImpl(seiMethod, this);
addOperation(operation);
} else {
@@ -372,7 +357,6 @@
// HOWEVER the generated JAX-WS async methods (see above) may (will always?) have the same
// operation name and so will come down this path; they need to be added.
// TODO: When Axis2 starts supporting overloaded operations, then this logic will need to be changed
- // TODO: Should we verify that these are the async methods before adding them, and treat it as an error otherwise?
// Loop through all the opdescs; if one doesn't currently have a java method set, set it
// If all have java methods set, then add a new one. Assume we'll need to add a new one.
@@ -407,7 +391,6 @@
* @param javaMethodName String representing a Java Method Name
* @return
*/
- // FIXME: This is confusing; some getOperations use the QName from the WSDL or annotation; this one uses the java method name; rename this signature I think; add on that takes a String but does a QName lookup against the WSDL/Annotation
public OperationDescription[] getOperationForJavaMethod(String javaMethodName) {
if (DescriptionUtils.isEmpty(javaMethodName)) {
return null;
@@ -489,8 +472,6 @@
* @see org.apache.axis2.jaxws.description.EndpointInterfaceDescription#getDispatchableOperation(QName operationQName)
*/
public OperationDescription[] getDispatchableOperation(QName operationQName) {
- //FIXME:OperationDescriptionImpl creates operation qname with empty namespace. Thus using localname
- //to read dispachable operation.
// REVIEW: Can this be synced at a more granular level? Can't sync on dispatchableOperations because
// it may be null, but also the initialization must finish before next thread sees
// dispatachableOperations != null
@@ -499,6 +480,9 @@
initializeDispatchableOperationsList();
}
}
+
+ // Note that OperationDescriptionImpl creates operation qname with empty namespace. Thus
+ // using only the localPart to get dispatchable operations.
QName key = new QName("",operationQName.getLocalPart());
List<OperationDescription> operations = dispatchableOperations.get(key);
if(operations!=null){
@@ -593,8 +577,6 @@
// SOAP Binding annotation realted methods
// ========================================
public SOAPBinding getAnnoSoapBinding() {
- // TODO: Test with sei Null, not null, SOAP Binding annotated, not annotated
-
if (soapBindingAnnotation == null) {
soapBindingAnnotation = dbc.getSoapBindingAnnot();
}
@@ -969,7 +951,6 @@
} else {
// Default value per JSR-181 MR Sec 4.1 pg 15 defers to "Implementation defined,
// as described in JAX-WS 2.0, section 3.2" which is JAX-WS 2.0 Sec 3.2, pg 29.
- // FIXME: Hardcoded protocol for namespace
webServiceTargetNamespace =
DescriptionUtils.makeNamespaceFromPackageName(
DescriptionUtils.getJavaPackageName(dbc.getClassName()),
@@ -980,7 +961,6 @@
}
public String getAnnoWebServiceName() {
- //REVIEW the following, used to get Port
if (webService_Name == null) {
if (getAnnoWebService() != null
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/OperationDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/OperationDescriptionImpl.java?rev=651412&r1=651411&r2=651412&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/OperationDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/OperationDescriptionImpl.java Thu Apr 24 13:42:53 2008
@@ -96,8 +96,6 @@
// support overloaded methods in the WSDL; the operations are stored on AxisService as children in a HashMap with the wsdl
// operation name as the key.
-// TODO: Need tests for all the "default" code paths in the annotation getters.
-// TODO: Need tests for each when annotation is not present where that is allowed by the spec.
class OperationDescriptionImpl
implements OperationDescription, OperationDescriptionJava, OperationDescriptionWSDL {
private EndpointInterfaceDescription parentEndpointInterfaceDescription;
@@ -140,7 +138,6 @@
// annotation is absent, the behavior defined on the Type is used.
// per JSR-181 MR Sec 4.7 "Annotation: javax.jws.soap.SOAPBinding" pg 28
private SOAPBinding soapBindingAnnotation;
- // REVIEW: Should this be using the jaxws annotation values or should that be wrappered?
private javax.jws.soap.SOAPBinding.Style soapBindingStyle;
public static final javax.jws.soap.SOAPBinding.Style SoapBinding_Style_VALID =
javax.jws.soap.SOAPBinding.Style.DOCUMENT;
@@ -200,7 +197,6 @@
private Class resultActualTypeClazz;
OperationDescriptionImpl(Method method, EndpointInterfaceDescription parent) {
- // TODO: Look for WebMethod anno; get name and action off of it
parentEndpointInterfaceDescription = parent;
partAttachmentMap = new HashMap<String, AttachmentDescription>();
setSEIMethod(method);
@@ -300,7 +296,7 @@
newAxisOperation =
AxisOperationFactory.getOperationDescription(WSDL2Constants.MEP_URI_OUT_IN);
}
- //TODO: There are several other MEP's, such as: OUT_ONLY, IN_OPTIONAL_OUT, OUT_IN, OUT_OPTIONAL_IN, ROBUST_OUT_ONLY,
+ //REVIEW: There are several other MEP's, such as: OUT_ONLY, IN_OPTIONAL_OUT, OUT_IN, OUT_OPTIONAL_IN, ROBUST_OUT_ONLY,
// ROBUST_IN_ONLY
// Determine how these MEP's should be handled, if at all
} catch (Exception e) {
@@ -810,13 +806,10 @@
return new QName(determineOperationName(javaMethod));
}
- //TODO: For now, we are overriding the above method only because it is static, these should
- //be combined at some point
public static QName determineOperationQName(MethodDescriptionComposite mdc) {
return new QName(determineOperationName(mdc));
}
- //TODO: Deprecate this after we use only DBC objects
private static String determineOperationName(Method javaMethod) {
String operationName = null;
@@ -856,7 +849,6 @@
}
public String getOperationName() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebMethodOperationName();
}
@@ -914,7 +906,6 @@
}
public String getAction() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebMethodAction();
}
@@ -931,7 +922,6 @@
}
public boolean isExcluded() {
- // REVIEW: WSDL/Annotation merge
return getAnnoWebMethodExclude();
}
@@ -971,7 +961,6 @@
}
public String getRequestWrapperLocalName() {
- // REVIEW: WSDL/Anno merge
return getAnnoRequestWrapperLocalName();
}
@@ -1000,7 +989,6 @@
}
public String getRequestWrapperTargetNamespace() {
- // REVIEW: WSDL/Anno merge
return getAnnoRequestWrapperTargetNamespace();
}
@@ -1029,7 +1017,6 @@
}
public String getRequestWrapperClassName() {
- // REVIEW: WSDL/Anno merge
return getAnnoRequestWrapperClassName();
}
@@ -1106,7 +1093,6 @@
}
public String getResponseWrapperTargetNamespace() {
- // REVIEW: WSDL/Anno merge
return getAnnoResponseWrapperTargetNamespace();
}
@@ -1127,7 +1113,6 @@
responseWrapperTargetNamespace = getAnnoResponseWrapper().targetNamespace();
} else {
// The default value for targetNamespace is the target namespace of the SEI. [JAX-WS Sec 7.3, p. 80]
- // TODO: Implement getting the TNS from the SEI
responseWrapperTargetNamespace =
getEndpointInterfaceDescription().getTargetNamespace();
}
@@ -1136,7 +1121,6 @@
}
public String getResponseWrapperClassName() {
- // REVIEW: WSDL/Anno merge
return getAnnoResponseWrapperClassName();
}
@@ -1226,7 +1210,6 @@
}
public String[] getParamNames() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebParamNames();
}
@@ -1269,7 +1252,6 @@
ArrayList<Mode> buildModes = new ArrayList<Mode>();
ParameterDescription[] paramDescs = getParameterDescriptions();
for (ParameterDescription currentParamDesc : paramDescs) {
- // TODO: Consider new ParamDesc.Mode vs WebParam.Mode
buildModes.add(((ParameterDescriptionJava)currentParamDesc).getAnnoWebParamMode());
}
webParamMode = buildModes.toArray(new Mode[0]);
@@ -1329,7 +1311,6 @@
}
public String getResultName() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebResultName();
}
@@ -1355,7 +1336,6 @@
}
public String getResultPartName() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebResultPartName();
}
@@ -1376,7 +1356,6 @@
}
public String getResultTargetNamespace() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebResultTargetNamespace();
}
@@ -1406,7 +1385,6 @@
}
public boolean isResultHeader() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebResultHeader();
}
@@ -1448,7 +1426,6 @@
}
public javax.jws.soap.SOAPBinding.Style getSoapBindingStyle() {
- // REVIEW: WSDL/Anno merge
return getAnnoSoapBindingStyle();
}
@@ -1465,7 +1442,6 @@
}
public javax.jws.soap.SOAPBinding.Use getSoapBindingUse() {
- // REVIEW: WSDL/Anno merge
return getAnnoSoapBindingUse();
}
@@ -1482,7 +1458,6 @@
}
public javax.jws.soap.SOAPBinding.ParameterStyle getSoapBindingParameterStyle() {
- // REVIEW: WSDL/Anno merge
return getAnnoSoapBindingParameterStyle();
}
@@ -1575,7 +1550,6 @@
}
public boolean isOneWay() {
- // REVIEW: WSDL/Anno merge
return isAnnoOneWay();
}
@@ -1731,7 +1705,6 @@
}
}
if (methodName != null && returnTypeName != null) {
- // REVIEW: Not sure the method MUST end with "Async"; I think it can be customized.
answer = (returnTypeName.contains(Response.class.getName()) ||
returnTypeName.contains(Future.class.getName()));
}
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ParameterDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ParameterDescriptionImpl.java?rev=651412&r1=651411&r2=651412&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ParameterDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ParameterDescriptionImpl.java Thu Apr 24 13:42:53 2008
@@ -103,10 +103,6 @@
//TODO: Need to build the schema map. Need to add logic to add this parameter
// to the schema map.
- //TODO: Need to consider processing the following JAXWS annotations on this DBC
- // webServiceRef is probably only client, so shouldn't be here
- //webServiceContextAnnotation = pdc.getWebServiceContextAnnot();
- //webServiceRefAnnotation = pdc.getWebServiceRefAnnot();
}
/*
@@ -228,7 +224,6 @@
}
public String getParameterName() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebParamName();
}
@@ -253,7 +248,6 @@
}
public String getPartName() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebParamPartName();
}
@@ -271,7 +265,6 @@
}
public String getTargetNamespace() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebParamTargetNamespace();
}
@@ -299,13 +292,11 @@
// public Mode getMode() {
public WebParam.Mode getMode() {
- // REVIEW: WSDL/Anno merge. Problem is that OpDesc is expecting WebParam.Mode
return getAnnoWebParamMode();
}
public WebParam.Mode getAnnoWebParamMode() {
if (webParamMode == null) {
- // REVIEW: Is the following correct?
// Interesting conundrum here:
// Because WebParam.mode has a default value, it will always return something if the
// annotation is present. That value is currently Mode.IN. However, that default is only
@@ -334,7 +325,6 @@
}
public boolean isHeader() {
- // REVIEW: WSDL/Anno merge
return getAnnoWebParamHeader();
}
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java?rev=651412&r1=651411&r2=651412&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java Thu Apr 24 13:42:53 2008
@@ -88,7 +88,6 @@
private String wsdlURL;
private QName serviceQName;
- // TODO: Possibly remove Definition and delegate to the Defn on the AxisSerivce set as a paramater by WSDLtoAxisServicBuilder?
private WSDLWrapper wsdlWrapper;
private WSDLWrapper generatedWsdlWrapper;
@@ -270,12 +269,6 @@
String serviceImplName = this.composite.getClassName();
this.dbcMap = dbcMap;
- //TODO: How to we get this when called from server side, create here for now
- //REVIEW: The value being set here is used later in validation checking to
- // validation that should occur separately on server and client. If
- // at some point this constructor is ever called by the client side,
- // then we'll have to get smarter about how we determine server/client
- // validation
this.isServerSide = true;
//capture the WSDL, if there is any...to be used for later processing
@@ -283,18 +276,14 @@
// Do a first pass validation for this DescriptionBuilderComposite.
// This is not intended to be a full integrity check, but rather a fail-fast mechanism
- // TODO: Refactor this to a seperate validator class?
validateDBCLIntegrity();
// The ServiceQName instance variable is set based on annotation or default
// It will be set by the EndpointDescriptionImpl since it is the one that knows
// how to process the annotations and the defaults.
- //TODO: When we get this, need to consider verifying service name between WSDL
- // and annotations, so
// Create the EndpointDescription hierachy from the service impl annotations; Since the PortQName is null,
// it will be set to the annotation value.
- //EndpointDescription endpointDescription = new EndpointDescription(null, this, serviceImplName);
EndpointDescriptionImpl endpointDescription =
new EndpointDescriptionImpl(this, serviceImplName, composite.getProperties());
addEndpointDescription(endpointDescription);
@@ -474,19 +463,19 @@
// The EndpointDescription already exists; nothing needs to be done
} else if (sei != null) {
// The Dispatch should not have an SEI associated with it on the update call.
- // REVIEW: Is this a valid check?
throw ExceptionFactory.makeWebServiceException(
Messages.getMessage("createDispatchFail3",portQName.toString()));
} else if (getWSDLWrapper() != null && isPortDeclared) {
// EndpointDescription doesn't exist and this is a declared Port, so create one
- // Use the SEI Class and its annotations to finish creating the Description hierarchy. Note that EndpointInterface, Operations, Parameters, etc.
- // are not created for Dispatch-based ports, but might be updated later if a getPort is done against the same declared port.
- // TODO: Need to create the Axis Description objects after we have all the config info (i.e. from this SEI)
+ // Use the SEI Class and its annotations to finish creating the Description hierarchy.
+ // Note that EndpointInterface, Operations, Parameters, etc. are not created for
+ // Dispatch-based ports, but might be updated later if a getPort is done against
+ // the same declared port.
endpointDescription = new EndpointDescriptionImpl(sei, portQName, this);
addEndpointDescription(endpointDescription);
} else {
// The port is not a declared port and it does not have an EndpointDescription,
- // meaning an addPort has not been done for it
+ // meaning an addPort has not been done for it
// This is an error.
throw ExceptionFactory.makeWebServiceException(
Messages.getMessage("createDispatchFail1", portQName.toString()));
@@ -936,7 +925,6 @@
);
}
- // TODO: Remove these and replace with appropraite get* methods for WSDL information
/* (non-Javadoc)
* @see org.apache.axis2.jaxws.description.ServiceDescriptionWSDL#getWSDLWrapper()
*/
@@ -951,10 +939,6 @@
return wsdlURL;
}
- /**
- * TODO: This method should be replaced with specific methods for getWSDLGenerated... similar to
- * how getWsdlWrapper should be replaced.
- */
public WSDLWrapper getGeneratedWsdlWrapper() {
return this.generatedWsdlWrapper;
}
@@ -1067,13 +1051,6 @@
//and retrieve
//the composite that represents this impl
-//TODO: Currently, we are calling this method on the DBC. However, the DBC
-//will eventually need access to to the whole DBC map to do proper validation.
-//We don't want to pass the map of DBC's back into a single DBC.
-//So, for starters, this method and all the privates that it calls should be
-// moved to here. At some point, we should consider using a new class that we
-//can implement scenarios of, like validateServiceImpl implements validator
-
try {
validateIntegrity();
}
@@ -1087,17 +1064,10 @@
* Validates the integrity of an impl. class. This should not be called directly for an SEI composite
*/
void validateIntegrity() {
- //TODO: Consider moving this to a utils area, do we really want a public
- // method that checks integrity...possibly
-
//In General, this integrity checker should do gross level checking
//It should not be setting spec-defined default values, but can look
//at things like empty strings or null values
- //TODO: This method will validate the integrity of this object. Basically, if
- //consumer set this up improperly, then we should fail fast, should consider placing
- //this method in a utils class within the 'description' package
-
//Verify that, if this implements a strongly typed provider interface, that it
// also contain a WebServiceProvider annotation per JAXWS Sec. 5.1
Iterator<String> iter =
@@ -1156,7 +1126,6 @@
Messages.getMessage("validateIntegrityErr6",composite.getClassName()));
}
- //TODO: hmmm, will we ever actually validate an interface directly...don't think so
if (!composite.isInterface()) {
// TODO: Validate on the class that this.classModifiers Array does not contain the strings
// FINAL or ABSTRACT, but does contain PUBLIC
@@ -1227,8 +1196,6 @@
}
// Verify that the SOAPBinding annotations are supported.
- //REVIEW: The assumption here is that SOAPBinding annotation can be place on an impl. class
- // (implicit SEI) or a WebServiceProvider
if (composite.getSoapBindingAnnot() != null) {
if (composite.getSoapBindingAnnot().use() == javax.jws.soap.SOAPBinding.Use.ENCODED) {
throw ExceptionFactory.makeWebServiceException(
@@ -1236,7 +1203,6 @@
}
}
- //TODO: don't think this is necessary
checkMethodsAgainstWSDL();
}
}
@@ -1608,9 +1574,9 @@
* that all the public methods are in the wsdl
*/
private void checkMethodsAgainstWSDL() {
-//Verify that, for ImplicitSEI, that all methods that should exist(if one false found, then
-//only look for WebMethods w/ False, else take all public methods but ignore those with
-//exclude == true
+ // Verify that, for ImplicitSEI, that all methods that should exist(if one false found, then
+ // only look for WebMethods w/ False, else take all public methods but ignore those with
+ // exclude == true
if (webMethodAnnotationsExist()) {
if (DescriptionUtils.falseExclusionsExist(composite))
verifyFalseExclusionsWithWSDL();
@@ -1648,8 +1614,6 @@
private void validateSEI(DescriptionBuilderComposite seic) {
- //TODO: Validate SEI superclasses -- hmmm, may be doing this below
- //
if (seic.getWebServiceAnnot() == null) {
throw ExceptionFactory.makeWebServiceException(
Messages.getMessage("validateSEIErr1",composite.getClassName(),seic.getClassName()));
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org