public Set<String> moveProperties(String sourceConfigType, String targetConfigType, Set<String> propertiesToMove) {
    Set<String> moved = new HashSet<>();
    for (String property : propertiesToMove) {
      if (isPropertySet(sourceConfigType, property)) {
        String value = removeProperty(sourceConfigType, property);
        if (!isPropertySet(targetConfigType, property)) {
          setProperty(targetConfigType, property, value);
        }
        moved.add(property);
      }
    }
    return moved;
  }
Moves the given properties from {@code sourceConfigType} to {@code targetConfigType}.
If a property is already present in the target, it will be removed from the source, but not overwritten in the target.

@param sourceConfigType the config type to move properties from
@param targetConfigType the config type to move properties to
@param propertiesToMove names of properties to be moved
@return property names that were removed from the source
ambari-server/src/main/java/org/apache/ambari/server/topology/Configuration.java