Author: xcoulon
Date: 2012-04-25 05:14:52 -0400 (Wed, 25 Apr 2012)
New Revision: 40476
Modified:
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsEndpoint.java
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResource.java
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResourceMethod.java
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResource.java
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResourceMethod.java
Log:
Fixed -
https://issues.jboss.org/browse/JBIDE-11648
Modified:
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsEndpoint.java
===================================================================
---
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsEndpoint.java 2012-04-25
09:12:06 UTC (rev 40475)
+++
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsEndpoint.java 2012-04-25
09:14:52 UTC (rev 40476)
@@ -11,9 +11,13 @@
package org.jboss.tools.ws.jaxrs.core.internal.metamodel.domain;
import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_CONSUMED_MEDIATYPES_VALUE;
+import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_DEFAULT_VALUE_VALUE;
import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_HTTP_METHOD_VALUE;
+import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_MATRIX_PARAM_VALUE;
+import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_METHOD_PARAMETERS;
import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_PATH_VALUE;
import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_PRODUCED_MEDIATYPES_VALUE;
+import static
org.jboss.tools.ws.jaxrs.core.internal.metamodel.builder.JaxrsElementDelta.F_QUERY_PARAM_VALUE;
import java.util.ArrayList;
import java.util.Arrays;
@@ -176,7 +180,8 @@
refreshHttpMethod();
}
- if ((flags & F_PATH_VALUE) > 0) {
+ if ((flags & F_PATH_VALUE) > 0 || (flags & F_QUERY_PARAM_VALUE) > 0 ||
(flags & F_MATRIX_PARAM_VALUE) > 0 || (flags & F_DEFAULT_VALUE_VALUE) > 0
+ || (flags & F_METHOD_PARAMETERS) > 0) {
refreshUriPathTemplate();
}
@@ -232,17 +237,16 @@
uriPathTemplateBuilder.append(application.getApplicationPath());
}
for (JaxrsResourceMethod resourceMethod : resourceMethods) {
- if (resourceMethod.getParentResource().getPathTemplate() != null) {
+ if (resourceMethod.getParentResource().hasPathTemplate()) {
uriPathTemplateBuilder.append("/").append(resourceMethod.getParentResource().getPathTemplate());
}
- if (resourceMethod.getPathTemplate() != null) {
+ if (resourceMethod.hasPathTemplate()) {
uriPathTemplateBuilder.append("/").append(resourceMethod.getPathTemplate());
}
if (resourceMethod.getJavaMethodParameters() != null) {
refreshUriTemplateMatrixParams(uriPathTemplateBuilder, resourceMethod);
refreshUriTemplateQueryParams(uriPathTemplateBuilder, resourceMethod);
}
-
}
this.uriPathTemplate = uriPathTemplateBuilder.toString();
while (uriPathTemplate.indexOf("//") > -1) {
Modified:
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResource.java
===================================================================
---
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResource.java 2012-04-25
09:12:06 UTC (rev 40475)
+++
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResource.java 2012-04-25
09:14:52 UTC (rev 40476)
@@ -28,7 +28,6 @@
import org.jboss.tools.ws.jaxrs.core.jdt.Annotation;
import org.jboss.tools.ws.jaxrs.core.metamodel.EnumElementKind;
import org.jboss.tools.ws.jaxrs.core.metamodel.EnumKind;
-import org.jboss.tools.ws.jaxrs.core.metamodel.IJaxrsApplication;
import org.jboss.tools.ws.jaxrs.core.metamodel.IJaxrsResource;
import org.jboss.tools.ws.jaxrs.core.metamodel.IJaxrsResourceField;
import org.jboss.tools.ws.jaxrs.core.metamodel.IJaxrsResourceMethod;
@@ -42,9 +41,6 @@
*/
public class JaxrsResource extends JaxrsJavaElement<IType> implements
IJaxrsResource {
- /** Optional Application. */
- private final JaxrsJavaApplication application = null;
-
private final Map<String, JaxrsResourceField> resourceFields = new
HashMap<String, JaxrsResourceField>();
private final Map<String, JaxrsParamBeanProperty> paramBeanProperties = new
HashMap<String, JaxrsParamBeanProperty>();
@@ -134,6 +130,12 @@
}
return pathAnnotation.getValue("value");
}
+
+ @Override
+ public boolean hasPathTemplate() {
+ final Annotation pathAnnotation = getPathAnnotation();
+ return pathAnnotation != null && pathAnnotation.getValue("value") !=
null;
+ }
public Annotation getPathAnnotation() {
final Annotation pathAnnotation = getAnnotation(Path.class.getName());
Modified:
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResourceMethod.java
===================================================================
---
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResourceMethod.java 2012-04-25
09:12:06 UTC (rev 40475)
+++
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/internal/metamodel/domain/JaxrsResourceMethod.java 2012-04-25
09:14:52 UTC (rev 40476)
@@ -402,6 +402,12 @@
}
@Override
+ public boolean hasPathTemplate() {
+ final Annotation pathAnnotation = getPathAnnotation();
+ return pathAnnotation != null && pathAnnotation.getValue("value") !=
null;
+ }
+
+ @Override
public String getPathTemplate() {
final Annotation pathAnnotation = getPathAnnotation();
if (pathAnnotation == null) {
Modified:
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResource.java
===================================================================
---
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResource.java 2012-04-25
09:12:06 UTC (rev 40475)
+++
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResource.java 2012-04-25
09:14:52 UTC (rev 40476)
@@ -16,9 +16,12 @@
String getPathTemplate();
+ boolean hasPathTemplate();
+
List<String> getConsumedMediaTypes();
List<String> getProducedMediaTypes();
List<IJaxrsResourceMethod> getAllMethods();
+
}
\ No newline at end of file
Modified:
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResourceMethod.java
===================================================================
---
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResourceMethod.java 2012-04-25
09:12:06 UTC (rev 40475)
+++
trunk/ws/plugins/org.jboss.tools.ws.jaxrs.core/src/org/jboss/tools/ws/jaxrs/core/metamodel/IJaxrsResourceMethod.java 2012-04-25
09:14:52 UTC (rev 40476)
@@ -51,4 +51,6 @@
*/
List<String> getPathParamValueProposals();
+ boolean hasPathTemplate();
+
}
\ No newline at end of file