You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by ff...@apache.org on 2021/04/09 18:06:54 UTC

[cxf] branch 3.4.x-fixes updated: squash! [CXF-8450] Changes visibility of internal methods in JAXBDataBinding to permit extensions as necessary

This is an automated email from the ASF dual-hosted git repository.

ffang pushed a commit to branch 3.4.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git


The following commit(s) were added to refs/heads/3.4.x-fixes by this push:
     new 473d080  squash! [CXF-8450] Changes visibility of internal methods in JAXBDataBinding to permit extensions as necessary
473d080 is described below

commit 473d0805ea57f8d88484c096bfc2c38db4416aee
Author: Mantas Gridinas <ma...@storebrand.no>
AuthorDate: Wed Apr 7 10:38:35 2021 +0300

    squash! [CXF-8450] Changes visibility of internal methods in JAXBDataBinding to permit extensions as necessary
    
    Checks the built in schemas via method rather than directly
    
    (cherry picked from commit 218b67ba930a3664ed4a2934a34006d7102f2785)
---
 .../main/java/org/apache/cxf/jaxb/JAXBDataBinding.java   | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBDataBinding.java b/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBDataBinding.java
index 2d842a1..10f6a6b 100644
--- a/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBDataBinding.java
+++ b/rt/databinding/jaxb/src/main/java/org/apache/cxf/jaxb/JAXBDataBinding.java
@@ -248,7 +248,11 @@ public class JAXBDataBinding extends AbstractInterceptorProvidingDataBinding
         this();
         setContext(context);
     }
-    
+
+    protected boolean getQualifiedSchemas() {
+        return qualifiedSchemas;
+    }
+
     public JAXBContext getContext() {
         return context;
     }
@@ -387,7 +391,7 @@ public class JAXBDataBinding extends AbstractInterceptorProvidingDataBinding
                 try {
                     for (DOMResult r : generateJaxbSchemas()) {
                         DOMSource src = new DOMSource(r.getNode(), r.getSystemId());
-                        if (BUILT_IN_SCHEMAS.containsValue(r)) {
+                        if (isInBuiltInSchemas(r)) {
                             bi.add(src);
                         } else {
                             schemas.add(src);
@@ -424,7 +428,7 @@ public class JAXBDataBinding extends AbstractInterceptorProvidingDataBinding
         }
     }
 
-    private void justCheckForJAXBAnnotations(ServiceInfo serviceInfo) {
+    protected void justCheckForJAXBAnnotations(ServiceInfo serviceInfo) {
         for (MessageInfo mi: serviceInfo.getMessages().values()) {
             for (MessagePartInfo mpi : mi.getMessageParts()) {
                 checkForJAXBAnnotations(mpi, serviceInfo.getXmlSchemaCollection(), serviceInfo.getTargetNamespace());
@@ -445,7 +449,7 @@ public class JAXBDataBinding extends AbstractInterceptorProvidingDataBinding
         }
     }
 
-    private String getNamespaceToUse(Service service) {
+    protected String getNamespaceToUse(Service service) {
         if ("true".equals(service.get("org.apache.cxf.databinding.namespace"))) {
             return null;
         }
@@ -813,6 +817,10 @@ public class JAXBDataBinding extends AbstractInterceptorProvidingDataBinding
                                  objectFactory);
     }
 
+    public static boolean isInBuiltInSchemas(DOMResult schema) {
+        return BUILT_IN_SCHEMAS.containsValue(schema);
+    }
+
     private static Field getElField(String partName, final Class<?> wrapperType) {
         String fieldName = JAXBUtils.nameToIdentifier(partName, JAXBUtils.IdentifierType.VARIABLE);
         Field[] fields = ReflectionUtil.getDeclaredFields(wrapperType);