public BaseConstructor() { constructedObjects = new HashMap<Node, Object>(); recursiveObjects = new HashSet<Node>(); maps2fill = new ArrayList<RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>>>(); sets2fill = new ArrayList<RecursiveTuple<Set<Object>, Object>>(); typeDefinitions = new HashMap<Class<? extends Object>, TypeDescription>(); typeTags = new HashMap<Tag, Class<? extends Object>>(); rootTag = null; explicitPropertyUtils = false; typeDefinitions.put(SortedMap.class, new TypeDescription(SortedMap.class, Tag.OMAP, TreeMap.class)); typeDefinitions.put(SortedSet.class, new TypeDescription(SortedSet.class, Tag.SET, TreeSet.class)); }
/** * Create Constructor for the specified class as the root. * * @param theRoot * - the class (usually JavaBean) to be constructed */ public Constructor(Class<? extends Object> theRoot) { this(new TypeDescription(checkRoot(theRoot))); }
private static <T> T parseObject(String rawConfig) { Constructor constructor = new Constructor(ConfiguratorConfig.class); TypeDescription itemDescription = new TypeDescription(ConfiguratorConfig.class); itemDescription.addPropertyParameters("items", ConfigItem.class); constructor.addTypeDescription(itemDescription); Yaml yaml = new Yaml(constructor); return yaml.load(rawConfig); }
private static <T> T parseObject(String rawConfig) { Constructor constructor = new Constructor(ConfiguratorConfig.class); TypeDescription itemDescription = new TypeDescription(ConfiguratorConfig.class); itemDescription.addPropertyParameters("items", ConfigItem.class); constructor.addTypeDescription(itemDescription); Yaml yaml = new Yaml(constructor); return yaml.load(rawConfig); }
protected void addTypeDescription(Constructor configConstructor) { TypeDescription mapPropertyTypeDesc = new TypeDescription(MapPropertyTypeDef.class); mapPropertyTypeDesc.putMapPropertyType("parameters", String.class, String.class); configConstructor.addTypeDescription(mapPropertyTypeDesc); }
public static TagRouterRule parse(String rawRule) { Constructor constructor = new Constructor(TagRouterRule.class); TypeDescription tagDescription = new TypeDescription(TagRouterRule.class); tagDescription.addPropertyParameters("tags", Tag.class); constructor.addTypeDescription(tagDescription); Yaml yaml = new Yaml(constructor); TagRouterRule rule = yaml.load(rawRule); rule.setRawRule(rawRule); if (CollectionUtils.isEmpty(rule.getTags())) { rule.setValid(false); } rule.init(); return rule; } }
public static TagRouterRule parse(String rawRule) { Constructor constructor = new Constructor(TagRouterRule.class); TypeDescription tagDescription = new TypeDescription(TagRouterRule.class); tagDescription.addPropertyParameters("tags", Tag.class); constructor.addTypeDescription(tagDescription); Yaml yaml = new Yaml(constructor); TagRouterRule rule = yaml.load(rawRule); rule.setRawRule(rawRule); if (CollectionUtils.isEmpty(rule.getTags())) { rule.setValid(false); } rule.init(); return rule; } }
private static Yaml yaml() { TypeDescription topologyDescription = new TypeDescription(TopologyDef.class); topologyDescription.putListPropertyType("spouts", SpoutDef.class); topologyDescription.putListPropertyType("bolts", BoltDef.class); topologyDescription.putListPropertyType("includes", IncludeDef.class); Constructor constructor = new Constructor(TopologyDef.class); constructor.addTypeDescription(topologyDescription); Yaml yaml = new Yaml(constructor); return yaml; }
Constructor constructor = new TestNGConstructor(XmlSuite.class); TypeDescription suiteDescription = new TypeDescription(XmlSuite.class); suiteDescription.putListPropertyType("packages", XmlPackage.class); suiteDescription.putListPropertyType("listeners", String.class); TypeDescription testDescription = new TypeDescription(XmlTest.class); testDescription.putListPropertyType("classes", XmlClass.class); testDescription.putMapPropertyType("metaGroups", String.class, List.class);
public static XmlSuite parse(String filePath, InputStream is) throws FileNotFoundException { Constructor constructor = new TestNGConstructor(XmlSuite.class); TypeDescription suiteDescription = new TypeDescription(XmlSuite.class); suiteDescription.addPropertyParameters("packages", XmlPackage.class); suiteDescription.addPropertyParameters("listeners", String.class); TypeDescription testDescription = new TypeDescription(XmlTest.class); testDescription.addPropertyParameters("classes", XmlClass.class); testDescription.addPropertyParameters("metaGroups", String.class, List.class);
public UaaConfigConstructor() { super(UaaConfiguration.class); TypeDescription oauthDesc = new TypeDescription(OAuth.class); oauthDesc.putMapPropertyType("clients", String.class, OAuthClient.class); addTypeDescription(oauthDesc); TypeDescription clientDesc = new TypeDescription(Client.class); clientDesc.putListPropertyType(ClientConstants.AUTO_APPROVE, String.class); addTypeDescription(clientDesc); TypeDescription oauthClientDesc = new TypeDescription(OAuthClient.class); oauthClientDesc.putListPropertyType(ClientConstants.AUTO_APPROVE, String.class); addTypeDescription(oauthClientDesc); TypeDescription claimsDesc = new TypeDescription(Claims.class); claimsDesc.putListPropertyType("exclusions", String.class); addTypeDescription(clientDesc); TypeDescription policyDesc = new TypeDescription(Policy.class); policyDesc.putMapPropertyType("keys", String.class, KeySpec.class); addTypeDescription(policyDesc);
public RecipeConfigParser() { Constructor constructor = new Constructor(Recipe.class); TypeDescription carDescription = new TypeDescription(Recipe.class); constructor.addTypeDescription(carDescription); Yaml yaml = new Yaml(constructor); Recipe recipe = (Recipe) yaml.load("ecommerce_test.yml"); }
/** * Read configuration from a file into a new {@link Settings} object. * * @param stream an input stream containing a Gremlin Server YAML configuration */ public static Settings read(final InputStream stream) { Objects.requireNonNull(stream); final Constructor constructor = new Constructor(Settings.class); final TypeDescription settingsDescription = new TypeDescription(Settings.class); settingsDescription.putListPropertyType("hosts", String.class); settingsDescription.putListPropertyType("serializers", SerializerSettings.class); constructor.addTypeDescription(settingsDescription); final Yaml yaml = new Yaml(constructor); return yaml.loadAs(stream, Settings.class); }
final TypeDescription settingsDescription = new TypeDescription(Settings.class); settingsDescription.putMapPropertyType("graphs", String.class, String.class); settingsDescription.putMapPropertyType("scriptEngines", String.class, ScriptEngineSettings.class); final TypeDescription serializerSettingsDescription = new TypeDescription(SerializerSettings.class); serializerSettingsDescription.putMapPropertyType("config", String.class, Object.class); constructor.addTypeDescription(serializerSettingsDescription); final TypeDescription scriptEngineSettingsDescription = new TypeDescription(ScriptEngineSettings.class); scriptEngineSettingsDescription.putListPropertyType("imports", String.class); scriptEngineSettingsDescription.putListPropertyType("staticImports", String.class); final TypeDescription sslSettings = new TypeDescription(SslSettings.class); constructor.addTypeDescription(sslSettings); final TypeDescription authenticationSettings = new TypeDescription(AuthenticationSettings.class); constructor.addTypeDescription(authenticationSettings); final TypeDescription serverMetricsDescription = new TypeDescription(ServerMetrics.class); constructor.addTypeDescription(serverMetricsDescription); final TypeDescription consoleReporterDescription = new TypeDescription(ConsoleReporterMetrics.class); constructor.addTypeDescription(consoleReporterDescription); final TypeDescription csvReporterDescription = new TypeDescription(CsvReporterMetrics.class); constructor.addTypeDescription(csvReporterDescription); final TypeDescription jmxReporterDescription = new TypeDescription(JmxReporterMetrics.class); constructor.addTypeDescription(jmxReporterDescription);
desc = new TypeDescription(Model.class); desc.putListPropertyType("licenses", License.class); desc.putListPropertyType("mailingLists", MailingList.class); desc = new TypeDescription(Dependency.class); desc.putListPropertyType("exclusions", Exclusion.class); addTypeDescription(desc); desc = new TypeDescription(DependencyManagement.class); desc.putListPropertyType("dependencies", Dependency.class); addTypeDescription(desc); desc = new TypeDescription(Build.class); desc.putListPropertyType("extensions", Extension.class); desc.putListPropertyType("resources", Resource.class); desc = new TypeDescription(BuildBase.class); desc.putListPropertyType("resources", Resource.class); desc.putListPropertyType("testResources", Resource.class); desc = new TypeDescription(PluginManagement.class); desc.putListPropertyType("plugins", Plugin.class); addTypeDescription(desc); desc = new TypeDescription(Plugin.class); desc.putListPropertyType("executions", PluginExecution.class); addTypeDescription(desc); desc = new TypeDescription(PluginExecution.class);
/** * Create Constructor for the specified class as the root. * * @param theRoot * - the class (usually JavaBean) to be constructed */ public Constructor(Class<? extends Object> theRoot) { this(new TypeDescription(checkRoot(theRoot))); }
/** * Create Constructor for the specified class as the root. * * @param theRoot * - the class (usually JavaBean) to be constructed */ public Constructor(Class<? extends Object> theRoot) { this(new TypeDescription(checkRoot(theRoot))); }
private Yaml constructYaml(Class<?> cls) { if (cls != null) { Constructor constructor = new Constructor(); constructor.addTypeDescription(new TypeDescription(cls, "!" + cls.getSimpleName())); return new Yaml(constructor); } return new Yaml(); }
CustomConstructor(Class<?> theRoot) { super(theRoot); TypeDescription seedDesc = new TypeDescription(ParameterizedClass.class); seedDesc.putMapPropertyType("parameters", String.class, String.class); addTypeDescription(seedDesc); }
private static Yaml yaml() { TypeDescription topologyDescription = new TypeDescription(TopologyDef.class); topologyDescription.putListPropertyType("spouts", SpoutDef.class); topologyDescription.putListPropertyType("bolts", BoltDef.class); topologyDescription.putListPropertyType("includes", IncludeDef.class); Constructor constructor = new Constructor(TopologyDef.class); constructor.addTypeDescription(topologyDescription); Yaml yaml = new Yaml(constructor); return yaml; }