List of usage examples for org.apache.commons.beanutils LazyDynaClass getName
public String getName()
getName() method of java.lang.ClassDynaClass implementation class to support different dynamic classes, with different sets of properties. From source file:ddf.catalog.data.dynamic.impl.MetacardFactoryImpl.java
private static void registerNewType(String name, List<MetacardPropertyDescriptorImpl> descriptors) { // save the list of MetacardPropertyDescriptor if (typeProperties.get(name) != null) { LOGGER.warn("Attempt to overwrite dynamic metacard type with name {} - only one instance allowed.", name);//from w ww. ja v a 2 s. c om return; } MetacardPropertyDescriptorImpl[] descriptorArray = new MetacardPropertyDescriptorImpl[descriptors.size()]; int i = 0; for (MetacardPropertyDescriptorImpl descriptor : descriptors) { descriptorArray[i++] = descriptor; } typeProperties.put(name, descriptorArray); LazyDynaClass dynaClass = new LazyDynaClass(name, descriptorArray); dynaClass.setReturnNull(true); LOGGER.info("Registering new dynamic metacard - name {}", dynaClass.getName()); typeClasses.put(dynaClass.getName(), dynaClass); }
From source file:ddf.catalog.data.dynamic.impl.MetacardFactoryImpl.java
@Override public void registerDynamicMetacardType(String name, List<MetacardPropertyDescriptor> descriptors) { if (StringUtils.isNotEmpty(name) && descriptors != null && descriptors.size() > 0) { DynaProperty[] properties = new DynaProperty[descriptors.size()]; int i = 0; for (MetacardPropertyDescriptor descriptor : descriptors) { properties[i++] = getDynaProperty(descriptor); }//www . j a va 2s . co m LazyDynaClass dynaClass = new LazyDynaClass(name, properties); // set to return null when getter is called with non-existent property dynaClass.setReturnNull(true); LOGGER.info("Registering new dynamic metacard - name {}", dynaClass.getName()); typeClasses.put(dynaClass.getName(), dynaClass); typeProperties.put(name, descriptors.toArray(new MetacardPropertyDescriptor[0])); } else { LOGGER.warn( "Called to register dynamic metacard with invalid data - name must be non-null and one or more descriptors - name: {} descriptor size: {}", name, descriptors == null ? "null" : descriptors.size()); } }