/*
 * Copyright (c) OSGi Alliance (2017). All Rights Reserved.
 * 
 * Licensed 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.osgi.service.configurator;

/**
 * Defines standard constants for the Configurator services.
 * 
 * @author $Id$
 */
public final class ConfiguratorConstants {
	private ConfiguratorConstants() {
		// non-instantiable
	}

	/**
	 * Framework property specifying initial configurations to be applied by the
	 * Configurator on startup.
	 * <p>
	 * If the value of this property starts with a '{' (ignoring leading
	 * whitespace) it is interpreted as JSON and directly feed into the
	 * Configurator.
	 * <p>
	 * Otherwise the value is interpreted as a comma separated list of URLs
	 * pointing to JSON documents.
	 */
	public static final String	CONFIGURATOR_INITIAL	= "configurator.initial";

	/**
	 * Framework property specifying the directory to be used by the
	 * Configurator to store binary files.
	 * <p>
	 * If a value is specified, the Configurator will write all binaries to the
	 * given directory. Therefore the Configurator bundle needs read and write
	 * access to this directory.
	 * <p>
	 * If this property is not specified, the Configurator will store all binary
	 * files in its bundle private data area.
	 */
	public static final String	CONFIGURATOR_BINARIES	= "configurator.binaries";

	/**
	 * Prefix to mark properties as input for the Configurator when processing a
	 * configuration.
	 */
	public static final String	PROPERTY_PREFIX			= ":configurator:";

	/**
	 * Global property in the configuration JSON specifying the version of the
	 * JSON format.
	 * <p>
	 * Currently only version {@code 1} is defined for the JSON format and
	 * therefore the only allowed value is {@code 1} for this property. If this
	 * property is not specified, {@code 1} is assumed.
	 */
	public static final String	PROPERTY_JSON_VERSION	= PROPERTY_PREFIX
			+ "json-version";

	/**
	 * Configuration property for the configuration ranking.
	 * <p>
	 * The value of this property must be convertible to a number.
	 */
	public static final String	PROPERTY_RANKING		= PROPERTY_PREFIX
			+ "ranking";

	/**
	 * Configuration property for the configuration policy.
	 * <p>
	 * Allowed values are {@link #POLICY_DEFAULT} and {@link #POLICY_FORCE}
	 * 
	 * @see #POLICY_DEFAULT
	 * @see #POLICY_FORCE
	 */
	public static final String	PROPERTY_POLICY			= PROPERTY_PREFIX
			+ "policy";

	/**
	 * Value for defining the default policy.
	 * 
	 * @see #PROPERTY_POLICY
	 */
	public static final String	POLICY_DEFAULT			= "default";

	/**
	 * Value for defining the force policy.
	 * 
	 * @see #PROPERTY_POLICY
	 */
	public static final String	POLICY_FORCE			= "force";
}

@@ -1939,18 +1939,27 @@
 guration
+ resource
 .%0A
-
 %09 */%0A%09pu
@@ -2068,20 +2068,24 @@
 uration 
-JSON
+resource
  specify
@@ -2106,21 +2106,25 @@
 n of
- the
 %0A%09 * 
-JSON
+the resource
  for
@@ -2380,20 +2380,24 @@
 ROPERTY_
-JSON
+RESOURCE
 _VERSION
@@ -2425,13 +2425,733 @@
 %09+ %22
-json-
+resource-version%22;%0A%0A%09/**%0A%09 * Global property in the configuration resource specifying the symbolic%0A%09 * name of the configuration resource. If not specified the symbolic name of%0A%09 * the bundle containing the resource is used. Mandatory for configuration%0A%09 * resources that do not reside in a bundle%0A%09 */%0A%09public static final String%09PROPERTY_SYMBOLIC_NAME%09%09= PROPERTY_PREFIX%0A%09%09%09+ %22symbolic-name%22;%0A%0A%09/**%0A%09 * Global property in the configuration resource specifying the version of%0A%09 * the resource. If not specified the version of the bundle containing the%0A%09 * resource is used. Mandatory for configuration resources that do not%0A%09 * reside in a bundle.%0A%09 */%0A%09public static final String%09PROPERTY_VERSION%09%09%09= PROPERTY_PREFIX%0A%09%09%09+ %22
 vers

Add missing constants