public final void addModel(ConfigurationMetadata model) { models.put(model.getNamespaceURI(), model); }
private void writeDataMembers(PrintWriter pw, ConfigurationMetadata model) { for (ConfigurationItemMetadata definition : model.getDefinitions()) { QName type = definition.getType(); String className = getClassName(type, false); String memberName = JAXBUtils.nameToIdentifier(definition.getName(), JAXBUtils.IdentifierType.VARIABLE); pw.print(" private "); pw.print(className); pw.print(" "); pw.print(memberName); pw.println(";"); } pw.println(); pw.print(" private Collection<String> _initialized = "); pw.println("new ArrayList<String>();"); pw.println(); }
protected boolean isValidTopConfiguration(ConfigurationMetadata model, Configuration parent) { String parentNamespaceURI = model.getParentNamespaceURI(); if (parentNamespaceURI == null || "".equals(parentNamespaceURI)) { return true; } return false; }
@SuppressWarnings("unchecked") public List<String> getStringList(String name) { Object obj = getObject(name); if (null == obj) { throw new ConfigurationException(new Message("ITEM_NO_VALUE_EXC", BUNDLE, name)); } try { Method method = obj.getClass().getMethod("getItem", new Class[0]); obj = method.invoke(obj, new Object[0]); return (List<String>)obj; } catch (ClassCastException ex) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } catch (NoSuchMethodException e) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } catch (IllegalAccessException e) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } catch (InvocationTargetException e) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } }
public float getFloat(String name) { Object obj = getObject(name); if (null == obj) { throw new ConfigurationException(new Message("ITEM_NO_VALUE_EXC", BUNDLE, name)); } try { return ((Float)obj).floatValue(); } catch (ClassCastException ex) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } }
private void initBean() { String beanClassName = SpringUtils.getBeanClassName(configuration.getModel().getNamespaceURI()); Class beanClass = null; try { beanClass = Class.forName(beanClassName); } catch (ClassCastException ex) { LOG.log(Level.SEVERE, "Could not load bean class " + beanClassName, ex); return; } catch (ClassNotFoundException ex) { LOG.log(Level.SEVERE, "Could not load bean class " + beanClassName, ex); return; } try { bean = beanClass.newInstance(); } catch (Exception e) { LOG.log(Level.SEVERE, "Could not create bean instance " + beanClassName, e); return; } }
private void writeImports(PrintWriter pw, ConfigurationMetadata model) { Collection<String> classNames = new ArrayList<String>(); for (ConfigurationItemMetadata definition : model.getDefinitions()) { QName type = definition.getType(); String className = getClassName(type, true);
ConfigurationItemMetadata definition = model.getDefinition(name); if (null == definition) { throw new ConfigurationException(new Message("ITEM_NOT_DEFINED_EXC", BUNDLE, name)); QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type));
public Configuration getChild(String namespaceURI, Object childId) { for (Configurator c : configurator.getClients()) { if (namespaceURI.equals(c.getConfiguration().getModel().getNamespaceURI()) && childId.equals(c.getConfiguration().getId())) { return c.getConfiguration(); } } if (LOG.isLoggable(Level.FINE)) { LOG.fine("Could not find child configuration with id: " + childId); } return null; }
private void writeAccessors(PrintWriter pw, ConfigurationMetadata model) { for (ConfigurationItemMetadata definition : model.getDefinitions()) { QName type = definition.getType(); String className = getClassName(type, false);
public long getLong(String name) { Object obj = getObject(name); if (null == obj) { throw new ConfigurationException(new Message("ITEM_NO_VALUE_EXC", BUNDLE, name)); } try { return ((Long)obj).longValue(); } catch (ClassCastException ex) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } }
public synchronized void registerClient(Configurator c) { // replace an existing client hook if it has the same namespace and id Object clientId = c.getConfiguration().getId(); String clientNamepace = c.getConfiguration().getModel().getNamespaceURI(); for (Configurator client : clients) { if (clientId.equals(client.getConfiguration().getId()) && clientNamepace.equals(client.getConfiguration().getModel().getNamespaceURI())) { clients.remove(client); break; } } clients.add(c); } public void unregisterClient(Configurator c) {
void registerCustomEditors(Configuration c) { for (ConfigurationItemMetadata definition : c.getModel().getDefinitions()) { QName qn = definition.getType(); String className = BeanGenerator.getClassName(qn, true); Class cl = JAXBUtils.holderClass(className); if (null != cl) { continue; } try { cl = Class.forName(className); } catch (ClassCastException ex) { throw new ConfigurationException(new Message("COULD_NOT_REGISTER_PROPERTY_EDITOR_EXC", LOG, className), ex); } catch (ClassNotFoundException ex) { throw new ConfigurationException(new Message("COULD_NOT_REGISTER_PROPERTY_EDITOR_EXC", LOG, className), ex); } if (cl == String.class) { continue; } if (null == getCustomEditors().get(cl)) { registerCustomEditor(cl, editor); if (LOG.isLoggable(Level.FINE)) { LOG.fine("Registered JaxbPropertyEditor for class: " + className); } } } }
public boolean getBoolean(String name) { Object obj = getObject(name); if (null == obj) { throw new ConfigurationException(new Message("ITEM_NO_VALUE_EXC", BUNDLE, name)); } try { return ((Boolean)obj).booleanValue(); } catch (ClassCastException ex) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } }
String className = SpringUtils.getBeanClassName(model.getNamespaceURI());
public short getShort(String name) { Object obj = getObject(name); if (null == obj) { throw new ConfigurationException(new Message("ITEM_NO_VALUE_EXC", BUNDLE, name)); } try { return ((Short)obj).shortValue(); } catch (ClassCastException ex) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } }
private void findBean(CeltixXmlBeanFactory beanFactory) { String beanClassName = SpringUtils.getBeanClassName(configuration.getModel().getNamespaceURI()); Class beanClass = null; try {
public double getDouble(String name) { Object obj = getObject(name); if (null == obj) { throw new ConfigurationException(new Message("ITEM_NO_VALUE_EXC", BUNDLE, name)); } try { return ((Double)obj).doubleValue(); } catch (ClassCastException ex) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } }
public int getInt(String name) { Object obj = getObject(name); if (null == obj) { throw new ConfigurationException(new Message("ITEM_NO_VALUE_EXC", BUNDLE, name)); } try { return ((Integer)obj).intValue(); } catch (ClassCastException ex) { QName type = model.getDefinition(name).getType(); throw new ConfigurationException(new Message("ITEM_TYPE_MISMATCH_EXC", BUNDLE, name, type)); } }
public Object getObject(String name) { ConfigurationItemMetadata definition = model.getDefinition(name); if (null == definition) { throw new ConfigurationException(new Message("ITEM_NOT_DEFINED_EXC", BUNDLE, name)); } Configuration holder = this; while (null != holder) { Object obj = getLocal(holder, name); if (null != obj) { return obj; } holder = holder.getParent(); } return definition.getDefaultValue(); }