| |
| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| package org.apache.geode.cache.configuration; |
| |
| import java.util.ArrayList; |
| import java.util.List; |
| |
| import javax.xml.bind.annotation.XmlAccessType; |
| import javax.xml.bind.annotation.XmlAccessorType; |
| import javax.xml.bind.annotation.XmlAttribute; |
| import javax.xml.bind.annotation.XmlElement; |
| import javax.xml.bind.annotation.XmlType; |
| |
| import org.apache.geode.annotations.Experimental; |
| |
| |
| /** |
| * |
| * A jndi-bindings element will contain the jndi-binding for each of the |
| * datasources which are to be bound with the JNDI Context. |
| * |
| * |
| * <p> |
| * Java class for jndi-bindings-type complex type. |
| * |
| * <p> |
| * The following schema fragment specifies the expected content contained within this class. |
| * |
| * <pre> |
| * <complexType name="jndi-bindings-type"> |
| * <complexContent> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> |
| * <sequence> |
| * <element name="jndi-binding" maxOccurs="unbounded" minOccurs="0"> |
| * <complexType> |
| * <complexContent> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> |
| * <sequence> |
| * <element name="config-property" maxOccurs="unbounded" minOccurs="0"> |
| * <complexType> |
| * <complexContent> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> |
| * <sequence> |
| * <element name="config-property-name" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * <element name="config-property-type" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * <element name="config-property-value" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * </sequence> |
| * </restriction> |
| * </complexContent> |
| * </complexType> |
| * </element> |
| * </sequence> |
| * <attribute name="blocking-timeout-seconds" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="conn-pooled-datasource-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="connection-url" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="idle-timeout-seconds" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="init-pool-size" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="jdbc-driver-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="jndi-name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="login-timeout-seconds" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="managed-conn-factory-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="max-pool-size" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="password" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="transaction-type" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="type" use="required"> |
| * <simpleType> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> |
| * <enumeration value="ManagedDataSource"/> |
| * <enumeration value="SimpleDataSource"/> |
| * <enumeration value="PooledDataSource"/> |
| * <enumeration value="XAPooledDataSource"/> |
| * </restriction> |
| * </simpleType> |
| * </attribute> |
| * <attribute name="user-name" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="xa-datasource-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * </restriction> |
| * </complexContent> |
| * </complexType> |
| * </element> |
| * </sequence> |
| * </restriction> |
| * </complexContent> |
| * </complexType> |
| * </pre> |
| * |
| * |
| */ |
| @XmlAccessorType(XmlAccessType.FIELD) |
| @XmlType(name = "jndi-bindings-type", namespace = "http://geode.apache.org/schema/cache", |
| propOrder = {"jndiBindings"}) |
| @Experimental |
| public class JndiBindingsType { |
| |
| @XmlElement(name = "jndi-binding", namespace = "http://geode.apache.org/schema/cache") |
| protected List<JndiBinding> jndiBindings; |
| |
| /** |
| * Gets the value of the jndiBindings property. |
| * |
| * <p> |
| * This accessor method returns a reference to the live list, |
| * not a snapshot. Therefore any modification you make to the |
| * returned list will be present inside the JAXB object. |
| * This is why there is not a <CODE>set</CODE> method for the jndiBindings property. |
| * |
| * <p> |
| * For example, to add a new item, do as follows: |
| * |
| * <pre> |
| * getJndiBindings().add(newItem); |
| * </pre> |
| * |
| * |
| * <p> |
| * Objects of the following type(s) are allowed in the list |
| * {@link JndiBindingsType.JndiBinding } |
| * |
| * |
| */ |
| public List<JndiBinding> getJndiBindings() { |
| if (jndiBindings == null) { |
| jndiBindings = new ArrayList<JndiBinding>(); |
| } |
| return this.jndiBindings; |
| } |
| |
| |
| /** |
| * <p> |
| * Java class for anonymous complex type. |
| * |
| * <p> |
| * The following schema fragment specifies the expected content contained within this class. |
| * |
| * <pre> |
| * <complexType> |
| * <complexContent> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> |
| * <sequence> |
| * <element name="config-property" maxOccurs="unbounded" minOccurs="0"> |
| * <complexType> |
| * <complexContent> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> |
| * <sequence> |
| * <element name="config-property-name" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * <element name="config-property-type" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * <element name="config-property-value" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * </sequence> |
| * </restriction> |
| * </complexContent> |
| * </complexType> |
| * </element> |
| * </sequence> |
| * <attribute name="blocking-timeout-seconds" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="conn-pooled-datasource-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="connection-url" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="idle-timeout-seconds" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="init-pool-size" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="jdbc-driver-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="jndi-name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="login-timeout-seconds" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="managed-conn-factory-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="max-pool-size" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="password" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="transaction-type" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="type" use="required"> |
| * <simpleType> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> |
| * <enumeration value="ManagedDataSource"/> |
| * <enumeration value="SimpleDataSource"/> |
| * <enumeration value="PooledDataSource"/> |
| * <enumeration value="XAPooledDataSource"/> |
| * </restriction> |
| * </simpleType> |
| * </attribute> |
| * <attribute name="user-name" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * <attribute name="xa-datasource-class" type="{http://www.w3.org/2001/XMLSchema}string" /> |
| * </restriction> |
| * </complexContent> |
| * </complexType> |
| * </pre> |
| * |
| * |
| */ |
| @XmlAccessorType(XmlAccessType.FIELD) |
| @XmlType(name = "", propOrder = {"configProperties"}) |
| @Experimental |
| public static class JndiBinding extends CacheElement { |
| |
| @XmlElement(name = "config-property", namespace = "http://geode.apache.org/schema/cache") |
| protected List<ConfigProperty> configProperties; |
| @XmlAttribute(name = "blocking-timeout-seconds") |
| protected String blockingTimeoutSeconds; |
| @XmlAttribute(name = "conn-pooled-datasource-class") |
| protected String connPooledDatasourceClass; |
| @XmlAttribute(name = "connection-url") |
| protected String connectionUrl; |
| @XmlAttribute(name = "idle-timeout-seconds") |
| protected String idleTimeoutSeconds; |
| @XmlAttribute(name = "init-pool-size") |
| protected String initPoolSize; |
| @XmlAttribute(name = "jdbc-driver-class") |
| protected String jdbcDriverClass; |
| @XmlAttribute(name = "jndi-name", required = true) |
| protected String jndiName; |
| @XmlAttribute(name = "login-timeout-seconds") |
| protected String loginTimeoutSeconds; |
| @XmlAttribute(name = "managed-conn-factory-class") |
| protected String managedConnFactoryClass; |
| @XmlAttribute(name = "max-pool-size") |
| protected String maxPoolSize; |
| @XmlAttribute(name = "password") |
| protected String password; |
| @XmlAttribute(name = "transaction-type") |
| protected String transactionType; |
| @XmlAttribute(name = "type", required = true) |
| protected String type; |
| @XmlAttribute(name = "user-name") |
| protected String userName; |
| @XmlAttribute(name = "xa-datasource-class") |
| protected String xaDatasourceClass; |
| |
| /** |
| * Gets the value of the configProperties property. |
| * |
| * <p> |
| * This accessor method returns a reference to the live list, |
| * not a snapshot. Therefore any modification you make to the |
| * returned list will be present inside the JAXB object. |
| * This is why there is not a <CODE>set</CODE> method for the configProperties property. |
| * |
| * <p> |
| * For example, to add a new item, do as follows: |
| * |
| * <pre> |
| * getConfigProperties().add(newItem); |
| * </pre> |
| * |
| * |
| * <p> |
| * Objects of the following type(s) are allowed in the list |
| * {@link JndiBindingsType.JndiBinding.ConfigProperty } |
| * |
| * |
| */ |
| public List<ConfigProperty> getConfigProperties() { |
| if (configProperties == null) { |
| configProperties = new ArrayList<ConfigProperty>(); |
| } |
| return this.configProperties; |
| } |
| |
| /** |
| * Gets the value of the blockingTimeoutSeconds property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getBlockingTimeoutSeconds() { |
| return blockingTimeoutSeconds; |
| } |
| |
| /** |
| * Sets the value of the blockingTimeoutSeconds property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setBlockingTimeoutSeconds(String value) { |
| this.blockingTimeoutSeconds = value; |
| } |
| |
| /** |
| * Gets the value of the connPooledDatasourceClass property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getConnPooledDatasourceClass() { |
| return connPooledDatasourceClass; |
| } |
| |
| /** |
| * Sets the value of the connPooledDatasourceClass property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setConnPooledDatasourceClass(String value) { |
| this.connPooledDatasourceClass = value; |
| } |
| |
| /** |
| * Gets the value of the connectionUrl property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getConnectionUrl() { |
| return connectionUrl; |
| } |
| |
| /** |
| * Sets the value of the connectionUrl property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setConnectionUrl(String value) { |
| this.connectionUrl = value; |
| } |
| |
| /** |
| * Gets the value of the idleTimeoutSeconds property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getIdleTimeoutSeconds() { |
| return idleTimeoutSeconds; |
| } |
| |
| /** |
| * Sets the value of the idleTimeoutSeconds property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setIdleTimeoutSeconds(String value) { |
| this.idleTimeoutSeconds = value; |
| } |
| |
| /** |
| * Gets the value of the initPoolSize property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getInitPoolSize() { |
| return initPoolSize; |
| } |
| |
| /** |
| * Sets the value of the initPoolSize property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setInitPoolSize(String value) { |
| this.initPoolSize = value; |
| } |
| |
| /** |
| * Gets the value of the jdbcDriverClass property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getJdbcDriverClass() { |
| return jdbcDriverClass; |
| } |
| |
| /** |
| * Sets the value of the jdbcDriverClass property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setJdbcDriverClass(String value) { |
| this.jdbcDriverClass = value; |
| } |
| |
| /** |
| * Gets the value of the jndiName property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getJndiName() { |
| return jndiName; |
| } |
| |
| /** |
| * Sets the value of the jndiName property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setJndiName(String value) { |
| this.jndiName = value; |
| } |
| |
| /** |
| * Gets the value of the loginTimeoutSeconds property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getLoginTimeoutSeconds() { |
| return loginTimeoutSeconds; |
| } |
| |
| /** |
| * Sets the value of the loginTimeoutSeconds property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setLoginTimeoutSeconds(String value) { |
| this.loginTimeoutSeconds = value; |
| } |
| |
| /** |
| * Gets the value of the managedConnFactoryClass property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getManagedConnFactoryClass() { |
| return managedConnFactoryClass; |
| } |
| |
| /** |
| * Sets the value of the managedConnFactoryClass property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setManagedConnFactoryClass(String value) { |
| this.managedConnFactoryClass = value; |
| } |
| |
| /** |
| * Gets the value of the maxPoolSize property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getMaxPoolSize() { |
| return maxPoolSize; |
| } |
| |
| /** |
| * Sets the value of the maxPoolSize property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setMaxPoolSize(String value) { |
| this.maxPoolSize = value; |
| } |
| |
| /** |
| * Gets the value of the password property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getPassword() { |
| return password; |
| } |
| |
| /** |
| * Sets the value of the password property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setPassword(String value) { |
| this.password = value; |
| } |
| |
| /** |
| * Gets the value of the transactionType property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getTransactionType() { |
| return transactionType; |
| } |
| |
| /** |
| * Sets the value of the transactionType property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setTransactionType(String value) { |
| this.transactionType = value; |
| } |
| |
| /** |
| * Gets the value of the type property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getType() { |
| return type; |
| } |
| |
| /** |
| * Sets the value of the type property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setType(String value) { |
| this.type = value; |
| } |
| |
| /** |
| * Gets the value of the userName property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getUserName() { |
| return userName; |
| } |
| |
| /** |
| * Sets the value of the userName property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setUserName(String value) { |
| this.userName = value; |
| } |
| |
| /** |
| * Gets the value of the xaDatasourceClass property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getXaDatasourceClass() { |
| return xaDatasourceClass; |
| } |
| |
| /** |
| * Sets the value of the xaDatasourceClass property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setXaDatasourceClass(String value) { |
| this.xaDatasourceClass = value; |
| } |
| |
| @Override |
| public String getId() { |
| return getJndiName(); |
| } |
| |
| /** |
| * <p> |
| * Java class for anonymous complex type. |
| * |
| * <p> |
| * The following schema fragment specifies the expected content contained within this class. |
| * |
| * <pre> |
| * <complexType> |
| * <complexContent> |
| * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> |
| * <sequence> |
| * <element name="config-property-name" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * <element name="config-property-type" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * <element name="config-property-value" type="{http://www.w3.org/2001/XMLSchema}string"/> |
| * </sequence> |
| * </restriction> |
| * </complexContent> |
| * </complexType> |
| * </pre> |
| * |
| * |
| */ |
| @XmlAccessorType(XmlAccessType.FIELD) |
| @XmlType(name = "", |
| propOrder = {"configPropertyName", "configPropertyType", "configPropertyValue"}) |
| public static class ConfigProperty extends CacheElement { |
| |
| @XmlElement(name = "config-property-name", namespace = "http://geode.apache.org/schema/cache", |
| required = true) |
| protected String configPropertyName; |
| @XmlElement(name = "config-property-type", namespace = "http://geode.apache.org/schema/cache", |
| required = true) |
| protected String configPropertyType; |
| @XmlElement(name = "config-property-value", |
| namespace = "http://geode.apache.org/schema/cache", required = true) |
| protected String configPropertyValue; |
| |
| public ConfigProperty() {}; |
| |
| public ConfigProperty(String name, String type, String value) { |
| this.configPropertyName = name; |
| this.configPropertyType = type; |
| this.configPropertyValue = value; |
| } |
| |
| public ConfigProperty(String name, String value) { |
| this.configPropertyName = name; |
| this.configPropertyValue = value; |
| } |
| |
| /** |
| * Get the id of the element. The id is the same as the name. |
| * |
| * @return the id of the element |
| */ |
| @Override |
| public String getId() { |
| return getName(); |
| } |
| |
| /** |
| * Gets the value of the configPropertyName property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getName() { |
| return configPropertyName; |
| } |
| |
| /** |
| * Sets the value of the configPropertyName property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setName(String value) { |
| this.configPropertyName = value; |
| } |
| |
| /** |
| * Gets the value of the configPropertyType property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getType() { |
| return configPropertyType; |
| } |
| |
| /** |
| * Sets the value of the configPropertyType property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setType(String value) { |
| this.configPropertyType = value; |
| } |
| |
| /** |
| * Gets the value of the configPropertyValue property. |
| * |
| * possible object is |
| * {@link String } |
| * |
| */ |
| public String getValue() { |
| return configPropertyValue; |
| } |
| |
| /** |
| * Sets the value of the configPropertyValue property. |
| * |
| * allowed object is |
| * {@link String } |
| * |
| */ |
| public void setValue(String value) { |
| this.configPropertyValue = value; |
| } |
| |
| } |
| |
| } |
| |
| } |