List of usage examples for org.apache.commons.beanutils ConvertUtils register
public static void register(Converter converter, Class clazz)
Register a custom Converter for the specified destination Class
, replacing any previously registered Converter.
For more details see ConvertUtilsBean
.
From source file:com.feilong.core.bean.BeanUtil.java
/** * {@link ConvertUtils#register(Converter, Class)}?. * // ww w .j a va2 s. co m * <h3>:</h3> * * <blockquote> * <p> * ??,static???,?register converter,<br> * ?,ConvertUtilsConverter,?,<br> * : * </p> * * <pre class="code"> * ConvertUtils.register(new DateLocaleConverter(Locale.US, DatePattern.TO_STRING_STYLE), Date.class) * * User user1 = new User(); * user1.setDate(new Date()); * * User user2 = new User(); * BeanUtil.copyProperties(user2, user1, "date"); * </pre> * * <p> * {@link DateLocaleConverter} ?? static ? {@link org.apache.commons.beanutils.converters.DateConverter} ? * </p> * * <p> * ,<span style="color:red">,?commons-bean {@link ConvertUtils#register(Converter, Class)}</span> ,<br> * ?static??,? {@link Converter} ?? * </p> * </blockquote> * * @param converter * the converter * @param klass * the klass * @see org.apache.commons.beanutils.ConvertUtils#register(Converter, Class) * @since 1.5.0 */ public static void register(Converter converter, Class<?> klass) { ConvertUtils.register(converter, klass); }
From source file:com.mmj.app.lucene.solr.client.SolrClient.java
public static Object toBean(SolrDocument record, Class<?> clazz) { Object o = null;/* ww w.jav a 2s . c o m*/ try { o = clazz.newInstance(); } catch (InstantiationException e1) { e1.printStackTrace(); } catch (IllegalAccessException e1) { e1.printStackTrace(); } Field[] fields = clazz.getDeclaredFields(); for (Field field : fields) { Object value = record.get(field.getName()); ConvertUtils.register(new DateConverter(null), java.util.Date.class); try { BeanUtils.setProperty(o, field.getName(), value); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } } return o; }
From source file:com.hihframework.core.utils.ReflectUtil.java
/** * ?clazzproperty.// ww w .j a v a 2s . c o m * * @param value ? * @param clazz ???Class * @param propertyName ???Class. */ public static Object convertValue(Object value, Class<?> toType) { try { DateConverter dc = new DateConverter(); dc.setUseLocaleFormat(true); dc.setPatterns(new String[] { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss" }); ConvertUtils.register(dc, Date.class); return ConvertUtils.convert(value, toType); } catch (Exception e) { throw convertReflectionExceptionToUnchecked(e); } }
From source file:com.square.tarificateur.noyau.util.comparaison.famille.ComparaisonFamilleUtil.java
/** Enregistrement des converters. */ private void resetConverter() { ConvertUtils.deregister();//from w ww . j a v a 2s . c o m if (customConverter != null) { for (Class<? extends Object> clazz : customConverter.keySet()) { ConvertUtils.register(customConverter.get(clazz), clazz); } } }
From source file:eu.scape_project.planning.xml.PlanParser.java
/** * Adds rules to the digester to parse the a plan XML. * /*from ww w . j ava 2 s .c om*/ * @param digester * the digester * @throws ParserConfigurationException * if an error occurred */ private static void addRules(Digester digester) throws ParserConfigurationException { ConvertUtils.register(new EnumConverter<EvaluationScope>(EvaluationScope.class), EvaluationScope.class); // start with a new file digester.addObjectCreate("*/plan", Plan.class); digester.addSetProperties("*/plan"); digester.addSetRoot("*/plan", "setProject"); digester.addFactoryCreate("*/changelog", ChangeLogFactory.class); digester.addSetNext("*/changelog", "setChangeLog"); digester.addObjectCreate("*/plan/properties", PlanProperties.class); digester.addSetProperties("*/plan/properties"); digester.addSetNext("*/plan/properties", "setPlanProperties"); digester.addCallMethod("*/plan/properties/description", "setDescription", 0); digester.addCallMethod("*/plan/properties/owner", "setOwner", 0); digester.addFactoryCreate("*/plan/properties/state", PlanStateFactory.class); digester.addSetNext("*/plan/properties/state", "setState"); PlanParser.addCreateUpload(digester, "*/plan/properties/report", "setReportUpload", DigitalObject.class); digester.addObjectCreate("*/plan/basis", ProjectBasis.class); digester.addSetProperties("*/plan/basis"); digester.addSetNext("*/plan/basis", "setProjectBasis"); digester.addCallMethod("*/plan/basis/applyingPolicies", "setApplyingPolicies", 0); digester.addCallMethod("*/plan/basis/designatedCommunity", "setDesignatedCommunity", 0); digester.addCallMethod("*/plan/basis/mandate", "setMandate", 0); digester.addCallMethod("*/plan/basis/documentTypes", "setDocumentTypes", 0); digester.addCallMethod("*/plan/basis/identificationCode", "setIdentificationCode", 0); digester.addCallMethod("*/plan/basis/organisationalProcedures", "setOrganisationalProcedures", 0); digester.addCallMethod("*/plan/basis/planningPurpose", "setPlanningPurpose", 0); digester.addCallMethod("*/plan/basis/planRelations", "setPlanRelations", 0); digester.addCallMethod("*/plan/basis/preservationRights", "setPreservationRights", 0); digester.addCallMethod("*/plan/basis/referenceToAgreements", "setReferenceToAgreements", 0); // define common rule for triggers, for all */triggers/...! // also used for PlanDefinition digester.addObjectCreate("*/triggers", TriggerDefinition.class); digester.addSetNext("*/triggers", "setTriggers"); // every time a */triggers/trigger is encountered: digester.addFactoryCreate("*/triggers/trigger", TriggerFactory.class); digester.addSetNext("*/triggers/trigger", "setTrigger"); // // Policy Tree // digester.addObjectCreate("*/plan/basis/policyTree", PolicyTree.class); digester.addSetProperties("*/plan/basis/policyTree"); digester.addSetNext("*/plan/basis/policyTree", "setPolicyTree"); digester.addObjectCreate("*/plan/basis/policyTree/policyNode", PolicyNode.class); digester.addSetProperties("*/plan/basis/policyTree/policyNode"); digester.addSetNext("*/plan/basis/policyTree/policyNode", "setRoot"); digester.addObjectCreate("*/policyNode/policyNode", PolicyNode.class); digester.addSetProperties("*/policyNode/policyNode"); digester.addSetNext("*/policyNode/policyNode", "addChild"); digester.addObjectCreate("*/policyNode/policy", Policy.class); digester.addSetProperties("*/policyNode/policy"); digester.addSetNext("*/policyNode/policy", "addChild"); // // Sample Records // digester.addObjectCreate("*/plan/sampleRecords", SampleRecordsDefinition.class); digester.addSetProperties("*/plan/sampleRecords"); digester.addSetNext("*/plan/sampleRecords", "setSampleRecordsDefinition"); digester.addCallMethod("*/plan/sampleRecords/samplesDescription", "setSamplesDescription", 0); // - records digester.addObjectCreate("*/record", SampleObject.class); digester.addSetProperties("*/record"); digester.addSetNext("*/record", "addRecord"); digester.addCallMethod("*/record/description", "setDescription", 0); digester.addCallMethod("*/record/originalTechnicalEnvironment", "setOriginalTechnicalEnvironment", 0); digester.addObjectCreate("*/record/data", BinaryDataWrapper.class); digester.addSetTop("*/record/data", "setData"); digester.addCallMethod("*/record/data", "setFromBase64Encoded", 0); // set up an general rule for all jhove strings! digester.addObjectCreate("*/jhoveXML", BinaryDataWrapper.class); digester.addSetTop("*/jhoveXML", "setString"); digester.addCallMethod("*/jhoveXML", "setFromBase64Encoded", 0); digester.addCallMethod("*/jhoveXML", "setMethodName", 1, new String[] { "java.lang.String" }); digester.addObjectParam("*/jhoveXML", 0, "setJhoveXMLString"); // set up general rule for all fitsXMLs digester.addObjectCreate("*/fitsXML", BinaryDataWrapper.class); digester.addSetTop("*/fitsXML", "setString"); digester.addCallMethod("*/fitsXML", "setFromBase64Encoded", 0); digester.addCallMethod("*/fitsXML", "setMethodName", 1, new String[] { "java.lang.String" }); digester.addObjectParam("*/fitsXML", 0, "setFitsXMLString"); digester.addObjectCreate("*/formatInfo", FormatInfo.class); digester.addSetProperties("*/formatInfo"); digester.addSetNext("*/formatInfo", "setFormatInfo"); PlanParser.addCreateUpload(digester, "*/record/xcdlDescription", "setXcdlDescription", XcdlDescription.class); // - collection profile digester.addObjectCreate("*/plan/sampleRecords/collectionProfile", CollectionProfile.class); digester.addSetProperties("*/plan/sampleRecords/collectionProfile"); digester.addSetNext("*/plan/sampleRecords/collectionProfile", "setCollectionProfile"); digester.addCallMethod("*/plan/sampleRecords/collectionProfile/collectionID", "setCollectionID", 0); digester.addCallMethod("*/plan/sampleRecords/collectionProfile/description", "setDescription", 0); digester.addCallMethod("*/plan/sampleRecords/collectionProfile/numberOfObjects", "setNumberOfObjects", 0); digester.addCallMethod("*/plan/sampleRecords/collectionProfile/typeOfObjects", "setTypeOfObjects", 0); digester.addCallMethod("*/plan/sampleRecords/collectionProfile/expectedGrowthRate", "setExpectedGrowthRate", 0); digester.addCallMethod("*/plan/sampleRecords/collectionProfile/retentionPeriod", "setRetentionPeriod", 0); PlanParser.addCreateUpload(digester, "*/plan/sampleRecords/collectionProfile/profile", "setProfile", DigitalObject.class); // requirements definition digester.addObjectCreate("*/plan/requirementsDefinition", RequirementsDefinition.class); digester.addSetProperties("*/plan/requirementsDefinition"); digester.addSetNext("*/plan/requirementsDefinition", "setRequirementsDefinition"); digester.addCallMethod("*/plan/requirementsDefinition/description", "setDescription", 0); // - uploads digester.addObjectCreate("*/plan/requirementsDefinition/uploads", ArrayList.class); digester.addSetNext("*/plan/requirementsDefinition/uploads", "setUploads"); PlanParser.addCreateUpload(digester, "*/plan/requirementsDefinition/uploads/upload", "add", DigitalObject.class); // alternatives digester.addObjectCreate("*/plan/alternatives", AlternativesDefinition.class); digester.addSetProperties("*/plan/alternatives"); digester.addCallMethod("*/plan/alternatives/description", "setDescription", 0); digester.addSetNext("*/plan/alternatives", "setAlternativesDefinition"); digester.addObjectCreate("*/plan/alternatives/alternative", Alternative.class); digester.addSetProperties("*/plan/alternatives/alternative"); digester.addSetNext("*/plan/alternatives/alternative", "addAlternative"); // - action digester.addObjectCreate("*/plan/alternatives/alternative/action", PreservationActionDefinition.class); digester.addSetProperties("*/plan/alternatives/alternative/action"); digester.addBeanPropertySetter("*/plan/alternatives/alternative/action/descriptor"); digester.addBeanPropertySetter("*/plan/alternatives/alternative/action/parameterInfo"); digester.addSetNext("*/plan/alternatives/alternative/action", "setAction"); digester.addCallMethod("*/plan/alternatives/alternative/description", "setDescription", 0); // - - params digester.addObjectCreate("*/plan/alternatives/alternative/action/params", LinkedList.class); digester.addSetNext("*/plan/alternatives/alternative/action/params", "setParams"); digester.addObjectCreate("*/plan/alternatives/alternative/action/params/param", Parameter.class); digester.addSetProperties("*/plan/alternatives/alternative/action/params/param"); digester.addSetNext("*/plan/alternatives/alternative/action/params/param", "add"); // - resource description digester.addObjectCreate("*/resourceDescription", ResourceDescription.class); digester.addSetProperties("*/resourceDescription"); digester.addSetNext("*/resourceDescription", "setResourceDescription"); digester.addCallMethod("*/resourceDescription/configSettings", "setConfigSettings", 0); digester.addCallMethod("*/resourceDescription/necessaryResources", "setNecessaryResources", 0); digester.addCallMethod("*/resourceDescription/reasonForConsidering", "setReasonForConsidering", 0); // - experiment digester.addObjectCreate("*/experiment", ExperimentWrapper.class); digester.addSetProperties("*/experiment"); digester.addSetNext("*/experiment", "setExperiment"); digester.addCallMethod("*/experiment/description", "setDescription", 0); digester.addCallMethod("*/experiment/settings", "setSettings", 0); PlanParser.addCreateUpload(digester, "*/experiment/workflow", "setWorkflow", DigitalObject.class); PlanParser.addCreateUpload(digester, "*/experiment/results/result", null, DigitalObject.class); PlanParser.addCreateUpload(digester, "*/result/xcdlDescription", "setXcdlDescription", XcdlDescription.class); // call function addUpload of ExperimentWrapper CallMethodRule r = new CallMethodRule(1, "addResult", 2); // method // with // two // params // every time */experiment/uploads/upload is encountered digester.addRule("*/experiment/results/result", r); // use attribute "key" as first param digester.addCallParam("*/experiment/results/result", 0, "key"); // and the object on stack (DigitalObject) as the second digester.addCallParam("*/experiment/results/result", 1, true); // addCreateUpload(digester, // "*/experiment/xcdlDescriptions/xcdlDescription", null, // XcdlDescription.class); // // call function addXcdlDescription of ExperimentWrapper // r = new CallMethodRule(1, "addXcdlDescription", 2); //method with // two // params // // every time */experiment/xcdlDescriptions/xcdlDescription is // encountered // digester.addRule("*/experiment/xcdlDescriptions/xcdlDescription", // r); // // use attribute "key" as first param // digester.addCallParam("*/experiment/xcdlDescriptions/xcdlDescription", // 0 , "key");http://fue.onb.ac.at/abo/data // // and the object on stack (DigitalObject) as the second // digester.addCallParam("*/experiment/xcdlDescriptions/xcdlDescription",1,true); digester.addObjectCreate("*/experiment/detailedInfos/detailedInfo", DetailedExperimentInfo.class); digester.addSetProperties("*/experiment/detailedInfos/detailedInfo"); digester.addBeanPropertySetter("*/experiment/detailedInfos/detailedInfo/programOutput"); digester.addBeanPropertySetter("*/experiment/detailedInfos/detailedInfo/cpr"); // call function "addDetailedInfo" of ExperimentWrapper r = new CallMethodRule(1, "addDetailedInfo", 2); // method with two // params // every time */experiment/detailedInfos/detailedInfo is encountered digester.addRule("*/experiment/detailedInfos/detailedInfo", r); // use attribute "key" as first param digester.addCallParam("*/experiment/detailedInfos/detailedInfo", 0, "key"); // and the object on stack as second parameter digester.addCallParam("*/experiment/detailedInfos/detailedInfo", 1, true); // read contained measurements: digester.addObjectCreate("*/detailedInfo/measurements/measurement", Measurement.class); digester.addSetProperties("*/detailedInfo/measurements/measurement"); digester.addSetNext("*/detailedInfo/measurements/measurement", "put"); // values are defined with wild-cards, and therefore set // automatically /* * for each value type a set of rules because of FreeStringValue we need * to store the value as XML-element instead of an attribute naming them * "ResultValues" wasn't nice too */ PlanParser.addCreateValue(digester, BooleanValue.class, "setValue"); PlanParser.addCreateValue(digester, FloatRangeValue.class, "setValue"); PlanParser.addCreateValue(digester, IntegerValue.class, "setValue"); PlanParser.addCreateValue(digester, IntRangeValue.class, "setValue"); PlanParser.addCreateValue(digester, OrdinalValue.class, "setValue"); PlanParser.addCreateValue(digester, PositiveFloatValue.class, "setValue"); PlanParser.addCreateValue(digester, PositiveIntegerValue.class, "setValue"); PlanParser.addCreateValue(digester, YanValue.class, "setValue"); PlanParser.addCreateValue(digester, FreeStringValue.class, "setValue"); // go no go decision digester.addObjectCreate("*/plan/decision", Decision.class); digester.addSetProperties("*/plan/decision"); digester.addSetNext("*/plan/decision", "setDecision"); digester.addCallMethod("*/plan/decision/actionNeeded", "setActionNeeded", 0); digester.addCallMethod("*/plan/decision/reason", "setReason", 0); digester.addFactoryCreate("*/plan/decision/goDecision", GoDecisionFactory.class); digester.addSetNext("*/plan/decision/goDecision", "setDecision"); // evaluation digester.addObjectCreate("*/plan/evaluation", Evaluation.class); digester.addSetProperties("*/plan/evaluation"); digester.addSetNext("*/plan/evaluation", "setEvaluation"); digester.addCallMethod("*/plan/evaluation/comment", "setComment", 0); // importance weighting digester.addObjectCreate("*/plan/importanceWeighting", ImportanceWeighting.class); digester.addSetProperties("*/plan/importanceWeighting"); digester.addSetNext("*/plan/importanceWeighting", "setImportanceWeighting"); digester.addCallMethod("*/plan/importanceWeighting/comment", "setComment", 0); // recommendation digester.addObjectCreate("*/plan/recommendation", RecommendationWrapper.class); digester.addSetProperties("*/plan/recommendation"); digester.addSetNext("*/plan/recommendation", "setRecommendation"); digester.addCallMethod("*/plan/recommendation/reasoning", "setReasoning", 0); digester.addCallMethod("*/plan/recommendation/effects", "setEffects", 0); // transformation digester.addObjectCreate("*/plan/transformation", Transformation.class); digester.addSetProperties("*/plan/transformation"); digester.addSetNext("*/plan/transformation", "setTransformation"); digester.addCallMethod("*/plan/transformation/comment", "setComment", 0); // Tree /* * Some rules for tree parsing are necessary for importing templates * too, that's why they are added by this static method. */ PlanParser.addTreeParsingRulesToDigester(digester); digester.addObjectCreate("*/leaf/evaluation", HashMap.class); digester.addSetNext("*/leaf/evaluation", "setValueMap"); /* * The valueMap has an entry for each (considered) alternative ... and * for each alternative there is a list of values, one per SampleObject. * Note: The digester uses a stack, therefore the rule to put the list * of values to the valueMap must be added after the rule for adding the * values to the list. */ /* * 2. and for each alternative there is a list of values, one per * SampleObject */ digester.addObjectCreate("*/leaf/evaluation/alternative", Values.class); digester.addCallMethod("*/leaf/evaluation/alternative/comment", "setComment", 0); /* * for each result-type a set of rules they are added to the valueMap by * the rules above */ PlanParser.addCreateResultValue(digester, BooleanValue.class); PlanParser.addCreateResultValue(digester, FloatValue.class); PlanParser.addCreateResultValue(digester, FloatRangeValue.class); PlanParser.addCreateResultValue(digester, IntegerValue.class); PlanParser.addCreateResultValue(digester, IntRangeValue.class); PlanParser.addCreateResultValue(digester, OrdinalValue.class); PlanParser.addCreateResultValue(digester, PositiveFloatValue.class); PlanParser.addCreateResultValue(digester, PositiveIntegerValue.class); PlanParser.addCreateResultValue(digester, YanValue.class); PlanParser.addCreateResultValue(digester, FreeStringValue.class); /* * 1. The valueMap has an entry for each (considered) alternative ... */ // call put of the ValueMap (HashMap) r = new CallMethodRule(1, "put", 2); digester.addRule("*/leaf/evaluation/alternative", r); digester.addCallParam("*/leaf/evaluation/alternative", 0, "key"); digester.addCallParam("*/leaf/evaluation/alternative", 1, true); // digester.addObjectCreate("*/plan/executablePlan/planWorkflow", // ExecutablePlanContentWrapper.class); // digester.addSetProperties("*/plan/executablePlan/planWorkflow"); // digester.addSetNext("*/plan/executablePlan/planWorkflow", // "setRecommendation"); // Executable plan definition digester.addObjectCreate("*/plan/executablePlan", ExecutablePlanDefinition.class); digester.addSetProperties("*/plan/executablePlan"); digester.addCallMethod("*/plan/executablePlan/objectPath", "setObjectPath", 0); digester.addCallMethod("*/plan/executablePlan/toolParameters", "setToolParameters", 0); digester.addCallMethod("*/plan/executablePlan/triggersConditions", "setTriggersConditions", 0); digester.addCallMethod("*/plan/executablePlan/validateQA", "setValidateQA", 0); PlanParser.addCreateUpload(digester, "*/plan/executablePlan/workflow", "setT2flowExecutablePlan", DigitalObject.class); digester.addSetNext("*/plan/executablePlan", "setExecutablePlanDefinition"); // Preservation action plan digester.addObjectCreate("*/plan/preservationActionPlan", DigitalObject.class); digester.addSetNext("*/plan/preservationActionPlan", "setPreservationActionPlan"); digester.addCallMethod("*/plan/preservationActionPlan", "setContentType", 1); digester.addObjectParam("*/plan/preservationActionPlan", 0, "application/xml"); digester.addCallMethod("*/plan/preservationActionPlan", "setFullname", 1); digester.addObjectParam("*/plan/preservationActionPlan", 0, PreservationActionPlanGenerator.FULL_NAME); digester.addSetNext("*/plan/preservationActionPlan", "setPreservationActionPlan"); PlanParser.addCreateXMLData(digester, "*/plan/preservationActionPlan", "setData", "setChangeLog"); // // Import Planets executable plan if present // // object-create rules are called at the beginning element-tags, in // the // same order as defined // first create the wrapper // digester.addObjectCreate("*/plan/executablePlan/planWorkflow", // NodeContentWrapper.class); // // then an element for workflowConf // digester.addRule("*/plan/executablePlan/planWorkflow/workflowConf", // new NodeCreateRule()); // // // CallMethod and SetNext rules are called at closing element-tags, // // (last // // in - first out!) // // CallMethodRule rr = new CallMethodRule(1, "setNodeContent", 2); // digester.addRule("*/plan/executablePlan/planWorkflow/workflowConf", // rr); // // right below the wrapper is an instance of // // ExecutablePlanDefinition // digester.addCallParam("*/plan/executablePlan/planWorkflow/workflowConf", // 0, 1); // // provide the name of the setter method // digester.addObjectParam("*/plan/executablePlan/planWorkflow/workflowConf", // 1, "setExecutablePlan"); // // // the generated node is not accessible as CallParam (why?!?), but // // available for addSetNext // digester.addSetNext("*/plan/executablePlan/planWorkflow/workflowConf", // "setNode"); // // // // // Import EPrints executable plan if present // // // digester.addObjectCreate("*/plan/executablePlan/eprintsPlan", // NodeContentWrapper.class); // // then an element for workflowConf // digester.addRule("*/plan/executablePlan/eprintsPlan", new // NodeCreateRule()); // // CallMethodRule rr2 = new CallMethodRule(1, // "setNodeContentEPrintsPlan", 2); // digester.addRule("*/plan/executablePlan/eprintsPlan", rr2); // // right below the wrapper is an instance of // // ExecutablePlanDefinition // digester.addCallParam("*/plan/executablePlan/eprintsPlan", 0, 1); // // provide the name of the setter method // digester.addObjectParam("*/plan/executablePlan/eprintsPlan", 1, // "setEprintsExecutablePlan"); // digester.addSetNext("*/plan/executablePlan/eprintsPlan", "setNode"); // Plan definition digester.addObjectCreate("*/plan/planDefinition", PlanDefinition.class); digester.addSetProperties("*/plan/planDefinition"); digester.addSetNext("*/plan/planDefinition", "setPlanDefinition"); digester.addCallMethod("*/plan/planDefinition/costsIG", "setCostsIG", 0); digester.addCallMethod("*/plan/planDefinition/costsPA", "setCostsPA", 0); digester.addCallMethod("*/plan/planDefinition/costsPE", "setCostsPE", 0); digester.addCallMethod("*/plan/planDefinition/costsQA", "setCostsQA", 0); digester.addCallMethod("*/plan/planDefinition/costsREI", "setCostsREI", 0); digester.addCallMethod("*/plan/planDefinition/costsRemarks", "setCostsRemarks", 0); digester.addCallMethod("*/plan/planDefinition/costsRM", "setCostsRM", 0); digester.addCallMethod("*/plan/planDefinition/costsTCO", "setCostsTCO", 0); digester.addCallMethod("*/plan/planDefinition/responsibleExecution", "setResponsibleExecution", 0); digester.addCallMethod("*/plan/planDefinition/responsibleMonitoring", "setResponsibleMonitoring", 0); digester.addObjectCreate("*/plan/planDefinition/triggers", TriggerDefinition.class); digester.addSetNext("*/plan/planDefinition/triggers", "setTriggers"); // every time a */plan/basis/triggers/trigger is encountered: digester.addFactoryCreate("*/plan/planDefinition/triggers/trigger", TriggerFactory.class); digester.addSetNext("*/plan/planDefinition/triggers/trigger", "setTrigger"); }
From source file:net.nicholaswilliams.java.teamcity.plugin.buildNumber.PluginConfigurationServiceDefault.java
protected void initializeXmlDigesterLoader() { if (PluginConfigurationServiceDefault.logger.isDebugEnabled()) PluginConfigurationServiceDefault.logger.debug("Initializing the XML digester."); Schema schema;/*from w w w.j a v a 2s .com*/ FileInputStream stream = null; try { stream = FileUtils.openInputStream(this.xsdFile); schema = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI) .newSchema(new StreamSource(stream)); } catch (SAXException e) { throw new FatalBeanException("Could not parse plugin configuration XSD", e); } catch (IOException e) { throw new FatalBeanException("Could not parse plugin configuration XSD", e); } finally { try { if (stream != null) stream.close(); } catch (IOException e) { PluginConfigurationServiceDefault.logger.warn("Failed to close XSD file stream.", e); } } this.digesterLoader.setNamespaceAware(true); this.digesterLoader.setSchema(schema); this.digesterLoader.setErrorHandler(new ConfigurationErrorHandler()); this.digesterLoader.setUseContextClassLoader(false); this.digesterLoader.setClassLoader(Digester.class.getClassLoader()); ConvertUtils.register(new JodaXML8601DateTimeConverter(), DateTime.class); }
From source file:io.github.moosbusch.permagon.configuration.builder.spi.AbstractPermagonBuilder.java
@Override public Object build() { Object result;/*from ww w . ja v a 2 s. c o m*/ Class<?> thype = getType(); BuilderFactory buylderFactory = getBuilderFactory(); PermagonApplicationContext applicationCtx = getApplicationContext(); Map<Class<?>, Converter> converterz = getConverters(); Builder<?> builder = buylderFactory.getBuilder(thype); if (builder != null) { result = builder.build(); applicationCtx.getBeanFactory().autowireBean(result); } else { result = applicationCtx.createBean(thype); } converterz.entrySet().stream().forEach((converterEntry) -> { ConvertUtils.register(converterEntry.getValue(), converterEntry.getKey()); }); if (result instanceof Pane) { Pane resultPane = (Pane) result; buildPane(resultPane); } else if (result instanceof ScrollPane) { ScrollPane resultPane = (ScrollPane) result; buildScrollPane(resultPane); } else if (result instanceof SplitPane) { SplitPane resultPane = (SplitPane) result; buildSplitPane(resultPane); } else if (result instanceof TabPane) { TabPane resultPane = (TabPane) result; buildTabPane(resultPane); } else if (result instanceof Tab) { Tab resultPane = (Tab) result; buildTab(resultPane); } else if (result instanceof ButtonBar) { ButtonBar resultPane = (ButtonBar) result; buildButtonBar(resultPane); } else if (result instanceof Accordion) { Accordion resultPane = (Accordion) result; buildAccordion(resultPane); } else if (result instanceof TitledPane) { TitledPane resultPane = (TitledPane) result; buildTitledPane(resultPane); } else if (result instanceof ToolBar) { ToolBar resultPane = (ToolBar) result; buildToolBar(resultPane); } else if (result instanceof MenuBar) { MenuBar resultPane = (MenuBar) result; buildMenuBar(resultPane); } try { BeanUtils.populate(result, this); } catch (IllegalAccessException | InvocationTargetException ex) { Logger.getLogger(AbstractPermagonBuilder.class.getName()).log(Level.SEVERE, null, ex); } return result; }
From source file:jp.go.nict.langrid.p2pgridbasis.data.langrid.converter.ConvertUtil.java
static private void setLangridConverter() { if (ConvertUtils.lookup(Calendar.class) == null) { logger.debug("### ConvertUtils.register ###"); ConvertUtils.register(converter, String.class); ConvertUtils.register(new CalendarConverter(), Calendar.class); ConvertUtils.register(new CalendarConverter(), GregorianCalendar.class); ConvertUtils.register(new CountryConverter(), CountryName.class); ConvertUtils.register(new InputStreamConverter(), InputStream.class); ConvertUtils.register(new BlobConverter(), Blob.class); ConvertUtils.register(new InstanceTypeConverter(), InstanceType.class); ConvertUtils.register(new LanguageConverter(), Language.class); ConvertUtils.register(new LanguagePathArrayConverter(), LanguagePath[].class); ConvertUtils.register(new LimitTypeConverter(), LimitType.class); // ConvertUtils.register(new NodeTypeConverter() , NodeType.class); ConvertUtils.register(new PeriodConverter(), Period.class); ConvertUtils.register(new ResourceTypeConverter(), OldResourceType.class); ConvertUtils.register(new ServiceContainerTypeConverter(), ServiceContainerType.class); ConvertUtils.register(new ServiceTypeConverter(), OldServiceType.class); ConvertUtils.register(new URIConverter(), URI.class); return;/*from w ww . j a v a 2s . c om*/ } }
From source file:com.wineaccess.winepermit.WinePermitHelper.java
/** * @param wineModel//from w w w .j a v a2s .c om */ private static void copyFulfilModelFromWinery(WineModel wineModel) { WineryLicenseFullfillAltStates wineryLicenseFullfillAltStates = WineryPermitRepository .findFulfilModelByWineryId(wineModel.getWineryId().getId()); if (wineryLicenseFullfillAltStates != null) { WineLicenseFullfillAltStates wineLicenseFullfillAltStates = new WineLicenseFullfillAltStates(); try { ConvertUtils.register(new DateConverter(null), Date.class); BeanUtils.copyProperties(wineLicenseFullfillAltStates, wineryLicenseFullfillAltStates); wineLicenseFullfillAltStates.setWineId(wineModel); WinePermitRepository.saveWineFulfilModel(wineLicenseFullfillAltStates); } catch (IllegalAccessException | InvocationTargetException e) { logger.info("Fulfill kodel couldn't be copied from winery"); logger.error(e); } } }
From source file:com.wineaccess.winepermit.WinePermitHelper.java
/** * @param wineModel/*from www. ja va 2 s .co m*/ */ private static void copyPermitModelFromWinery(WineModel wineModel) { List<WineryLicensePermitAltStates> wineryLicensePermitAltStates = WineryPermitRepository .findWineryLicensePermitAltStates(wineModel.getWineryId().getId()); for (WineryLicensePermitAltStates wineryLicensePermit : wineryLicensePermitAltStates) { WineLicensePermitAltStates wineLicensePermit = new WineLicensePermitAltStates(); try { ConvertUtils.register(new DateConverter(null), Date.class); BeanUtils.copyProperties(wineLicensePermit, wineryLicensePermit); wineLicensePermit.setWineId(wineModel); } catch (IllegalAccessException | InvocationTargetException e) { logger.info("Fulfill kodel couldn't be copied from winery"); logger.error(e); } WinePermitRepository.saveWineLicensePermitAltStates(wineLicensePermit); } }