/*-
 * ~~~~~~licensing~~~~~~
 * management-core
 * ==========
 * Copyright (C) 2020 - 2021 EmDev LLC
 * ==========
 * 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.
 * ~~~~~~/licensing~~~~~~
 */
package ru.entaxy.esb.platform.base.management.core;

public class ManagementCore {

	public static final String JMX_OBJECTNAME = "jmx.objectname";
	
	public static final String ENTAXY_JMX_DOMAIN = "ru.entaxy.esb";

	
	public static final String LOCAL_NODE_KEY = "localNode";

	public static final String LOCAL_NODE_VALUE = "0.0.0.0";

	public static final String REMOTE_NODE_KEY = "remoteNode";
	
	public static final String PLATFORM_KEY = "group";
	
	public static final String PLATFORM_KEY_VALUE = "platform";
	
	
	public static final String RUNTIME_KEY = PLATFORM_KEY;
	
	public static final String RUNTIME_KEY_VALUE = "runtime";
	
	
	public static final Qualifier Q_LOCAL_NODE = new Qualifier(LOCAL_NODE_KEY, LOCAL_NODE_VALUE);
	
	public static final String Q_LOCAL_NODE_S = ENTAXY_JMX_DOMAIN + ":" + LOCAL_NODE_KEY + "=" + LOCAL_NODE_VALUE;


	public static final Qualifier Q_PLATFORM = ManagementCore.Q_LOCAL_NODE.qualifier(PLATFORM_KEY, PLATFORM_KEY_VALUE);
	
	public static final Qualifier Q_RUNTIME = ManagementCore.Q_LOCAL_NODE.qualifier(RUNTIME_KEY, RUNTIME_KEY_VALUE);
	
	public static final String Q_PLATFORM_S = Q_LOCAL_NODE_S + "," + PLATFORM_KEY + "=" + PLATFORM_KEY_VALUE;
	
	public static final String Q_RUNTIME_S = Q_LOCAL_NODE_S + "," + RUNTIME_KEY + "=" + RUNTIME_KEY_VALUE;


	// public static final Qualifier Q_PLATFORM = new Qualifier(PLATFORM_KEY, PLATFORM_KEY_VALUE);
	
	// public static final Qualifier Q_RUNTIME = new Qualifier(RUNTIME_KEY, RUNTIME_KEY_VALUE);
	
}
