| /* |
| * 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.ignite.internal.managers.deployment; |
| |
| import java.util.Map; |
| import java.util.UUID; |
| import org.apache.ignite.cluster.ClusterNode; |
| import org.apache.ignite.configuration.DeploymentMode; |
| import org.apache.ignite.internal.util.tostring.GridToStringInclude; |
| import org.apache.ignite.internal.util.typedef.internal.S; |
| import org.apache.ignite.lang.IgnitePredicate; |
| import org.apache.ignite.lang.IgniteUuid; |
| |
| /** |
| * Deployment metadata. |
| */ |
| class GridDeploymentMetadata { |
| /** Deployment mode. */ |
| private DeploymentMode depMode; |
| |
| /** */ |
| private String alias; |
| |
| /** */ |
| private String clsName; |
| |
| /** */ |
| private String userVer; |
| |
| /** */ |
| private UUID sndNodeId; |
| |
| /** */ |
| private IgniteUuid clsLdrId; |
| |
| /** Class loader. */ |
| private ClassLoader clsLdr; |
| |
| /** Master node participants. */ |
| @GridToStringInclude |
| private Map<UUID, IgniteUuid> participants; |
| |
| /** */ |
| private ClassLoader parentLdr; |
| |
| /** */ |
| private boolean record; |
| |
| /** */ |
| private IgnitePredicate<ClusterNode> nodeFilter; |
| |
| /** |
| * |
| */ |
| GridDeploymentMetadata() { |
| // Meta. |
| } |
| |
| /** |
| * @param meta Meta to copy. |
| */ |
| GridDeploymentMetadata(GridDeploymentMetadata meta) { |
| assert meta != null; |
| |
| depMode = meta.deploymentMode(); |
| alias = meta.alias(); |
| clsName = meta.className(); |
| userVer = meta.userVersion(); |
| sndNodeId = meta.senderNodeId(); |
| clsLdr = meta.classLoader(); |
| clsLdrId = meta.classLoaderId(); |
| participants = meta.participants(); |
| parentLdr = meta.parentLoader(); |
| record = meta.record(); |
| nodeFilter = meta.nodeFilter(); |
| } |
| |
| /** |
| * Gets property depMode. |
| * |
| * @return Property depMode. |
| */ |
| DeploymentMode deploymentMode() { |
| return depMode; |
| } |
| |
| /** |
| * Sets property depMode. |
| * |
| * @param depMode Property depMode. |
| */ |
| void deploymentMode(DeploymentMode depMode) { |
| this.depMode = depMode; |
| } |
| |
| /** |
| * Gets property alias. |
| * |
| * @return Property alias. |
| */ |
| String alias() { |
| return alias; |
| } |
| |
| /** |
| * Sets property alias. |
| * |
| * @param alias Property alias. |
| */ |
| void alias(String alias) { |
| this.alias = alias; |
| } |
| |
| /** |
| * Gets property clsName. |
| * |
| * @return Property clsName. |
| */ |
| String className() { |
| return clsName; |
| } |
| |
| /** |
| * Sets property clsName. |
| * |
| * @param clsName Property clsName. |
| */ |
| void className(String clsName) { |
| this.clsName = clsName; |
| } |
| |
| /** |
| * Gets property seqNum. |
| * |
| * @return Property seqNum. |
| */ |
| long sequenceNumber() { |
| return clsLdrId.localId(); |
| } |
| |
| /** |
| * Gets property userVer. |
| * |
| * @return Property userVer. |
| */ |
| String userVersion() { |
| return userVer; |
| } |
| |
| /** |
| * Sets property userVer. |
| * |
| * @param userVer Property userVer. |
| */ |
| void userVersion(String userVer) { |
| this.userVer = userVer; |
| } |
| |
| /** |
| * Gets property senderNodeId. |
| * |
| * @return Property senderNodeId. |
| */ |
| UUID senderNodeId() { |
| return sndNodeId; |
| } |
| |
| /** |
| * Sets property senderNodeId. |
| * |
| * @param sndNodeId Property senderNodeId. |
| */ |
| void senderNodeId(UUID sndNodeId) { |
| this.sndNodeId = sndNodeId; |
| } |
| |
| /** |
| * Gets property clsLdrId. |
| * |
| * @return Property clsLdrId. |
| */ |
| IgniteUuid classLoaderId() { |
| return clsLdrId; |
| } |
| |
| /** |
| * Sets property clsLdrId. |
| * |
| * @param clsLdrId Property clsLdrId. |
| */ |
| void classLoaderId(IgniteUuid clsLdrId) { |
| this.clsLdrId = clsLdrId; |
| } |
| |
| /** |
| * Gets parent loader. |
| * |
| * @return Parent loader. |
| */ |
| public ClassLoader parentLoader() { |
| return parentLdr; |
| } |
| |
| /** |
| * Sets parent loader. |
| * |
| * @param parentLdr Parent loader. |
| */ |
| public void parentLoader(ClassLoader parentLdr) { |
| this.parentLdr = parentLdr; |
| } |
| |
| /** |
| * Gets property record. |
| * |
| * @return Property record. |
| */ |
| boolean record() { |
| return record; |
| } |
| |
| /** |
| * Sets property record. |
| * |
| * @param record Property record. |
| */ |
| void record(boolean record) { |
| this.record = record; |
| } |
| |
| /** |
| * @return Node participants. |
| */ |
| public Map<UUID, IgniteUuid> participants() { |
| return participants; |
| } |
| |
| /** |
| * @param participants Node participants. |
| */ |
| public void participants(Map<UUID, IgniteUuid> participants) { |
| this.participants = participants; |
| } |
| |
| /** |
| * @return Class loader. |
| */ |
| public ClassLoader classLoader() { |
| return clsLdr; |
| } |
| |
| /** |
| * @param clsLdr Class loader. |
| */ |
| public void classLoader(ClassLoader clsLdr) { |
| this.clsLdr = clsLdr; |
| } |
| |
| /** |
| * @param nodeFilter Node filter. |
| */ |
| public void nodeFilter(IgnitePredicate<ClusterNode> nodeFilter) { |
| this.nodeFilter = nodeFilter; |
| } |
| |
| /** |
| * @return Node filter. |
| */ |
| public IgnitePredicate<ClusterNode> nodeFilter() { |
| return nodeFilter; |
| } |
| |
| /** {@inheritDoc} */ |
| @Override public String toString() { |
| return S.toString(GridDeploymentMetadata.class, this, "seqNum", clsLdrId != null ? clsLdrId.localId() : "n/a"); |
| } |
| } |