| /* |
| * 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.felix.scr.impl.xml; |
| |
| import java.util.HashMap; |
| import java.util.Map; |
| |
| import org.apache.felix.scr.impl.metadata.DSVersion; |
| |
| /** |
| * Constants for the component XML |
| */ |
| public abstract class XmlConstants |
| { |
| // Empty Namespace URI maps to DS 1.0 |
| public static final String NAMESPACE_URI_EMPTY = ""; |
| |
| // Namespace URI of DS 1.0 |
| public static final String NAMESPACE_URI = "http://www.osgi.org/xmlns/scr/v1.0.0"; |
| |
| // Namespace URI of DS 1.1 |
| public static final String NAMESPACE_URI_1_1 = "http://www.osgi.org/xmlns/scr/v1.1.0"; |
| |
| // Namespace URI of DS 1.1-felix (see FELIX-1893) |
| public static final String NAMESPACE_URI_1_1_FELIX = "http://felix.apache.org/xmlns/scr/v1.1.0-felix"; |
| |
| // Namespace URI of DS 1.2 |
| public static final String NAMESPACE_URI_1_2 = "http://www.osgi.org/xmlns/scr/v1.2.0"; |
| |
| // Namespace URI of DS 1.2-felix (see FELIX-3377) |
| public static final String NAMESPACE_URI_1_2_FELIX = "http://felix.apache.org/xmlns/scr/v1.2.0-felix"; |
| |
| // Namespace URI of DS 1.3 |
| public static final String NAMESPACE_URI_1_3 = "http://www.osgi.org/xmlns/scr/v1.3.0"; |
| |
| // Namespace URI of Felix DS extensions 1.0 |
| public static final String NAMESPACE_URI_1_0_FELIX_EXTENSIONS = "http://felix.apache.org/xmlns/scr/extensions/v1.0.0"; |
| |
| // Namespace URI of DS 1.4 |
| public static final String NAMESPACE_URI_1_4 = "http://www.osgi.org/xmlns/scr/v1.4.0"; |
| |
| // Elements |
| public static final String EL_COMPONENT = "component"; |
| public static final String EL_COMPONENTS = "components"; |
| public static final String EL_FACTORY_PROPERTY = "factory-property"; |
| public static final String EL_FACTORY_PROPERTIES = "factory-properties"; |
| public static final String EL_IMPL = "implementation"; |
| public static final String EL_PROPERTY = "property"; |
| public static final String EL_PROPERTIES = "properties"; |
| public static final String EL_PROVIDE = "provide"; |
| public static final String EL_REF = "reference"; |
| public static final String EL_SERVICE = "service"; |
| |
| // Attributes |
| public static final String ATTR_ACTIVATE = "activate"; |
| public static final String ATTR_ACTIVATION_FIELDS = "activation-fields"; |
| public static final String ATTR_CLASS = "class"; |
| public static final String ATTR_CONFIG_PID = "configuration-pid"; |
| public static final String ATTR_CONFIG_POLICY = "configuration-policy"; |
| public static final String ATTR_DEACTIVATE = "deactivate"; |
| public static final String ATTR_ENABLED = "enabled"; |
| public static final String ATTR_ENTRY = "entry"; |
| public static final String ATTR_FACTORY = "factory"; |
| public static final String ATTR_IMMEDIATE = "immediate"; |
| public static final String ATTR_INIT = "init"; |
| public static final String ATTR_INTERFACE = "interface"; |
| public static final String ATTR_MODIFIED = "modified"; |
| public static final String ATTR_NAME = "name"; |
| public static final String ATTR_TYPE = "type"; |
| public static final String ATTR_VALUE = "value"; |
| |
| // Extension features |
| public static final String ATTR_CONFIGURABLE_SERVICE_PROPERTIES = "configurableServiceProperties"; |
| |
| public static final String ATTR_PERSISTENT_FACTORY_COMPONENT = "persistentFactoryComponent"; |
| |
| public static final String ATTR_DELETE_CALLS_MODIFY = "deleteCallsModify"; |
| |
| public static final String ATTR_OBSOLETE_FACTORY_COMPONENT_FACTORY = "obsoleteFactoryComponentFactory"; |
| |
| public static final String ATTR_CONFIGURE_WITH_INTERFACES = "configureWithInterfaces"; |
| |
| public static final String ATTR_DELAYED_KEEP_INSTANCES = "delayedKeepInstances"; |
| |
| // mapping of namespace URI to namespace code |
| public static final Map<String, DSVersion> NAMESPACE_CODE_MAP; |
| |
| |
| static |
| { |
| NAMESPACE_CODE_MAP = new HashMap<>(); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI_EMPTY, DSVersion.DS10 ); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI, DSVersion.DS10 ); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI_1_1, DSVersion.DS11 ); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI_1_1_FELIX, DSVersion.DS11Felix ); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI_1_2, DSVersion.DS12 ); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI_1_2_FELIX, DSVersion.DS12Felix ); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI_1_3, DSVersion.DS13 ); |
| NAMESPACE_CODE_MAP.put( NAMESPACE_URI_1_4, DSVersion.DS14 ); |
| } |
| } |