public WildcardBinding getWildcard() { if(initializedWildcard) { return wildcard; } if(particle != null) { wildcard = getWildcard(particle.getTerm()); initializedWildcard = true; } return wildcard; }
private static WildcardBinding getWildcard(TermBinding term) { if(term.isWildcard()) { return (WildcardBinding) term; } if(term.isModelGroup()) { ModelGroupBinding group = (ModelGroupBinding) term; for(Iterator i = group.getParticles().iterator(); i.hasNext();) { term = ((ParticleBinding)i.next()).getTerm(); if(term.isWildcard()) { return (WildcardBinding)term; } else if(term.isModelGroup()) { WildcardBinding wc = getWildcard(term); if (wc != null) return wc; } } } return null; } }
public static void initBeansHandler(TypeBinding typeBinding) { typeBinding.setHandler(SpringBeansHandler.HANDLER); // handle import typeBinding.pushInterceptor(SpringSchemaBinding.importQName, ImportInterceptor.INTERCEPTOR); // handle aliases typeBinding.pushInterceptor(SpringSchemaBinding.aliasQName, DeploymentAliasInterceptor.INTERCEPTOR); // handle beans typeBinding.pushInterceptor(SpringSchemaBinding.beanQName, DeploymentBeanInterceptor.INTERCEPTOR); // Deployment can take wildcards typeBinding.getWildcard().setWildcardHandler(DeploymentWildcardHandler.HANDLER); }
private void processWildcard(TypeBinding typeBinding, VariableMapping varMapping) { log.trace("processWildcard: " + typeBinding.getQName()); PropertyMetaData prop = null; String javaVariableName = varMapping.getJavaVariableName(); if (javaVariableName != null) { prop = new PropertyMetaData(); prop.setName(javaVariableName); } if (prop == null) { prop = new PropertyMetaData(); prop.setName("_any"); } WildcardBinding wildcard = typeBinding.getWildcard(); wildcard.setUnresolvedElementHandler(new SoapElementHandler()); wildcard.setUnresolvedCharactersHandler(new SoapCharactersHandler()); wildcard.setPropertyMetaData(prop); if (log.isTraceEnabled()) log.trace("Bound wildcard of " + typeBinding.getQName() + " to property " + prop.getName()); }
public static void configureValueBindings(TypeBinding typeBinding) { // type has beans typeBinding.pushInterceptor(SpringSchemaBinding.beanQName, ValueMetaDataElementInterceptor.VALUES); // type has refs typeBinding.pushInterceptor(SpringSchemaBinding.refQName, ValueMetaDataElementInterceptor.VALUES); // type has values typeBinding.pushInterceptor(SpringSchemaBinding.valueQName, ValueMetaDataElementInterceptor.VALUES); // type can take a list typeBinding.pushInterceptor(SpringSchemaBinding.listQName, ValueMetaDataElementInterceptor.VALUES); // type can take a set typeBinding.pushInterceptor(SpringSchemaBinding.setQName, ValueMetaDataElementInterceptor.VALUES); // type can take a map typeBinding.pushInterceptor(SpringSchemaBinding.mapQName, ValueMetaDataElementInterceptor.VALUES); // type has a null typeBinding.pushInterceptor(SpringSchemaBinding.nullQName, NullValueElementInterceptor.NULLVALUES); // type has wildcard WildcardBinding wcb = typeBinding.getWildcard(); if (wcb == null) throw new IllegalStateException("Missing wildcard binding for type: " + typeBinding.getQName()); wcb.setWildcardHandler(ValueWildcardHandler.WILDCARD); }
wildcard = parentType.getWildcard();
if (parentParticle != null && parentParticle.getTerm().isElement()) WildcardBinding wildcard = ((ElementBinding) parentParticle.getTerm()).getType().getWildcard(); if (wildcard != null)