public static CCustomizations getCustomizations(final CEnumConstant enumConstant) { final Object _enumConstant = enumConstant; if (_enumConstant instanceof CCustomizable) { return ((CCustomizable) _enumConstant).getCustomizations(); } else { return CCustomizations.EMPTY; } }
public static boolean containsCustomization(CCustomizable item, QName name) { return item.getCustomizations().find(name.getNamespaceURI(), name.getLocalPart()) != null; // for (Iterator iterator = item.declarations.iterator(); // iterator.hasNext();) { // final BIDeclaration declaration = (BIDeclaration) iterator.next(); // if (declaration instanceof BIXPluginCustomization) { // final BIXPluginCustomization customization = (BIXPluginCustomization) // declaration; // if (name.equals(customization.getName())) { // return true; // } // } // } // return false; }
static public List<CPluginCustomization> getAllCustomizations(CCustomizable customizable, Plugin plugin){ List<CPluginCustomization> result = new ArrayList<CPluginCustomization>(); Iterator<CPluginCustomization> it = (customizable.getCustomizations()).iterator(); while(it.hasNext()){ CPluginCustomization customization = it.next(); Element element = customization.element; if(plugin.isCustomizationTagName(element.getNamespaceURI(), element.getLocalName())){ result.add(customization); } } return result; } }
private List<FacetCustomization> detectCustomizations(CCustomizable ca) { List<FacetCustomization> facetCustomizations = new ArrayList<FacetCustomization>(); List<CPluginCustomization> pluginCustomizations = ca.getCustomizations(); if (pluginCustomizations != null) for (CPluginCustomization c : pluginCustomizations) { c.markAsAcknowledged(); String groups = c.element.getAttribute("groups"); String message = c.element.getAttribute("message"); String type = c.element.getAttribute("type"); if (type.equals("")) throw new RuntimeException("DOM attribute \"type\" is required in custom facet declarations."); String value = c.element.getAttribute("value"); facetCustomizations.add(new FacetCustomization(groups, message, type, value)); } return facetCustomizations; } }
private List<FacetCustomization> detectCustomizations(CCustomizable ca) { List<FacetCustomization> facetCustomizations = new ArrayList<FacetCustomization>(); List<CPluginCustomization> pluginCustomizations = ca.getCustomizations(); if (pluginCustomizations != null) for (CPluginCustomization c : pluginCustomizations) { c.markAsAcknowledged(); String groups = c.element.getAttribute("groups"); String message = c.element.getAttribute("message"); String type = c.element.getAttribute("type"); if ("".equals(type)) { throw new RuntimeException("DOM attribute \"type\" is required in custom facet declarations."); } String value = c.element.getAttribute(VALUE); facetCustomizations.add(new FacetCustomization(groups, message, type, value)); } return facetCustomizations; } }
public static void markIgnored(CCustomizable customizable) { customizable.getCustomizations().add(createCustomization$Ignored()); }
public static CPluginCustomization addCustomization(CCustomizable customizable, JAXBContext context, QName name, Object object) { final CPluginCustomization customization = marshal(context, name, object); customizable.getCustomizations().add(customization); return customization; } }
public static void markGenerated(CCustomizable customizable) { customizable.getCustomizations().add(createCustomization$Generated()); }
public static void markIgnored(CCustomizable customizable) { customizable.getCustomizations().add(createCustomization$Ignored()); }
public static void markGenerated(CCustomizable customizable) { customizable.getCustomizations().add(createCustomization$Generated()); }
public <T> T getCustomization(final Class<T> customizationClass, final Deque<CCustomizable> schemaComponents) { final QName qName = getQName(customizationClass); if (!schemaComponents.isEmpty()) { final CCustomizable schemaComponent = schemaComponents.pop(); final CPluginCustomization pluginCustomization = schemaComponent.getCustomizations().find(qName.getNamespaceURI(), qName.getLocalPart()); if (pluginCustomization == null) { return getCustomization(customizationClass, schemaComponents); } else { pluginCustomization.markAsAcknowledged(); return JAXB.unmarshal(new DOMSource(pluginCustomization.element), customizationClass); } } else { final CPluginCustomization pluginCustomization = this.outline.getModel().getCustomizations().find(qName.getNamespaceURI(), qName.getLocalPart()); if (pluginCustomization != null) { pluginCustomization.markAsAcknowledged(); return JAXB.unmarshal(new DOMSource(pluginCustomization.element), customizationClass); } else { return null; } } }
private static void checkAndInject(Collection<? extends CustomizableOutline> outlines) { for (CustomizableOutline co : outlines) { CPluginCustomization c = co.getTarget().getCustomizations().find(Const.NS, "code"); if(c==null) continue; // no customization --- nothing to inject here c.markAsAcknowledged(); // TODO: ideally you should validate this DOM element to make sure // that there's no typo/etc. JAXP 1.3 can do this very easily. String codeFragment = DOMUtils.getElementText(c.element); // inject the specified code fragment into the implementation class. co.getImplClass().direct(codeFragment); } } }
private static void checkAndInject(Collection<? extends CustomizableOutline> outlines) { for (CustomizableOutline co : outlines) { CPluginCustomization c = co.getTarget().getCustomizations().find(Const.NS, "code"); if(c==null) continue; // no customization --- nothing to inject here c.markAsAcknowledged(); // TODO: ideally you should validate this DOM element to make sure // that there's no typo/etc. JAXP 1.3 can do this very easily. String codeFragment = DOMUtils.getElementText(c.element); // inject the specified code fragment into the implementation class. co.getImplClass().direct(codeFragment); } } }
private static void checkAndInject(Collection<? extends CustomizableOutline> outlines) { for (CustomizableOutline co : outlines) { CPluginCustomization c = co.getTarget().getCustomizations().find(Const.NS, "code"); if(c==null) continue; // no customization --- nothing to inject here c.markAsAcknowledged(); // TODO: ideally you should validate this DOM element to make sure // that there's no typo/etc. JAXP 1.3 can do this very easily. String codeFragment = DOMUtils.getElementText(c.element); // inject the specified code fragment into the implementation class. co.getImplClass().direct(codeFragment); } } }