You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2018/04/21 21:28:15 UTC
[juneau] branch master updated: Debug build failure.
This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push:
new 91fc64d Debug build failure.
91fc64d is described below
commit 91fc64d0a582c3ea6de642bebe38b48270d9d4fd
Author: JamesBognar <ja...@apache.org>
AuthorDate: Sat Apr 21 17:28:00 2018 -0400
Debug build failure.
---
.../apache/juneau/rest/BasicRestInfoProvider.java | 7 +-
.../juneau/rest/BasicRestInfoProviderTest.java | 75 +++++++++++++++++++++-
2 files changed, 79 insertions(+), 3 deletions(-)
diff --git a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
index c9c7bbe..01cdac9 100644
--- a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
+++ b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
@@ -424,13 +424,13 @@ public class BasicRestInfoProvider implements RestInfoProvider {
op.put("responses", new TreeMap<>(responses));
if (! op.containsKey("consumes")) {
- List<MediaType> mConsumes = req.getParsers().getSupportedMediaTypes();
+ List<MediaType> mConsumes = sm.supportedContentTypes;
if (! mConsumes.equals(consumes))
op.put("consumes", mConsumes);
}
if (! op.containsKey("produces")) {
- List<MediaType> mProduces = req.getSerializers().getSupportedMediaTypes();
+ List<MediaType> mProduces = sm.supportedAcceptTypes;
if (! mProduces.equals(produces))
op.put("produces", mProduces);
}
@@ -529,6 +529,9 @@ public class BasicRestInfoProvider implements RestInfoProvider {
private ObjectMap getSchema(RestRequest req, ObjectMap schema, JsonSchemaSerializerSession js, Type type) throws Exception {
BeanSession bs = req.getBeanSession();
+ if (bs == null)
+ bs = BeanContext.DEFAULT.createBeanSession();
+
ClassMeta<?> cm = bs.getClassMeta(type);
if (schema.getBoolean("ignore", false))
diff --git a/juneau-rest/juneau-rest-server/src/test/java/org/apache/juneau/rest/BasicRestInfoProviderTest.java b/juneau-rest/juneau-rest-server/src/test/java/org/apache/juneau/rest/BasicRestInfoProviderTest.java
index 10cad52..6efdf37 100644
--- a/juneau-rest/juneau-rest-server/src/test/java/org/apache/juneau/rest/BasicRestInfoProviderTest.java
+++ b/juneau-rest/juneau-rest-server/src/test/java/org/apache/juneau/rest/BasicRestInfoProviderTest.java
@@ -45,8 +45,11 @@ public class BasicRestInfoProviderTest {
@Override
public InputStream findResource(Class<?> baseClass, String name, Locale locale) throws IOException {
- if (name.endsWith(".json"))
+ System.out.println("XXX - TestClasspathResourceFinder.findResource("+baseClass+", "+name+", " + locale + ")");
+ if (name.endsWith(".json")) {
+ System.out.println("XXX - InputStream1=" + BasicRestInfoProvider.class.getResourceAsStream("BasicRestinfoProviderTest_swagger.json"));
return BasicRestInfoProvider.class.getResourceAsStream("BasicRestinfoProviderTest_swagger.json");
+ }
return super.findResource(baseClass, name, locale);
}
}
@@ -559,6 +562,76 @@ public class BasicRestInfoProviderTest {
assertObjectEquals("[{name:'l-foo',description:'l-foo',externalDocs:{description:'l-foo',url:'l-foo'}}]", getSwaggerWithFile(new J07()).getTags());
}
+ // Auto-detect tags defined on methods.
+ @RestResource()
+ public static class J08 {
+
+ @RestMethod(swagger=@MethodSwagger(tags="foo"))
+ public void doFoo() {}
+ }
+
+ @Test
+ public void j08_tags_ResourceSwagger_tags_loose() throws Exception {
+ assertObjectEquals("[{name:'foo'}]", getSwagger(new J08()).getTags());
+ assertObjectEquals("[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'foo'}]", getSwaggerWithFile(new J08()).getTags());
+ }
+
+ // Comma-delimited list
+ @RestResource()
+ public static class J09 {
+
+ @RestMethod(swagger=@MethodSwagger(tags=" foo, bar "))
+ public void doFoo() {}
+ }
+
+ @Test
+ public void j09_tags_ResourceSwagger_tags_loose_cdl() throws Exception {
+ assertObjectEquals("[{name:'foo'},{name:'bar'}]", getSwagger(new J09()).getTags());
+ assertObjectEquals("[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'foo'},{name:'bar'}]", getSwaggerWithFile(new J09()).getTags());
+ }
+
+ // ObjectList
+ @RestResource()
+ public static class J10 {
+
+ @RestMethod(swagger=@MethodSwagger(tags="['foo', 'bar']"))
+ public void doFoo() {}
+ }
+
+ @Test
+ public void j10_tags_ResourceSwagger_tags_loose_objectlist() throws Exception {
+ assertObjectEquals("[{name:'foo'},{name:'bar'}]", getSwagger(new J10()).getTags());
+ assertObjectEquals("[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'foo'},{name:'bar'}]", getSwaggerWithFile(new J10()).getTags());
+ }
+
+ // ObjectList localized
+ @RestResource(messages="BasicRestInfoProviderTest")
+ public static class J11 {
+
+ @RestMethod(swagger=@MethodSwagger(tags="['$L{foo}', '$L{bar}']"))
+ public void doFoo() {}
+ }
+
+ @Test
+ public void j11_tags_ResourceSwagger_tags_loose_objectlist_localized() throws Exception {
+ assertObjectEquals("[{name:'l-foo'},{name:'l-bar'}]", getSwagger(new J11()).getTags());
+ assertObjectEquals("[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'l-foo'},{name:'l-bar'}]", getSwaggerWithFile(new J11()).getTags());
+ }
+
+ // Comma-delimited list localized
+ @RestResource(messages="BasicRestInfoProviderTest")
+ public static class J12 {
+
+ @RestMethod(swagger=@MethodSwagger(tags=" $L{foo}, $L{bar} "))
+ public void doFoo() {}
+ }
+
+ @Test
+ public void j12_tags_ResourceSwagger_tags_loose_cdl_localized() throws Exception {
+ assertObjectEquals("[{name:'l-foo'},{name:'l-bar'}]", getSwagger(new J12()).getTags());
+ assertObjectEquals("[{name:'s-name',description:'s-description',externalDocs:{description:'s-description',url:'s-url'}},{name:'l-foo'},{name:'l-bar'}]", getSwaggerWithFile(new J12()).getTags());
+ }
+
//-----------------------------------------------------------------------------------------------------------------
// /schemes
--
To stop receiving notification emails like this one, please contact
jamesbognar@apache.org.