org.apache.karaf.cellar.core.Group类的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(10.5k)|赞(0)|评价(0)|浏览(77)

本文整理了Java中org.apache.karaf.cellar.core.Group类的一些代码示例,展示了Group类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Group类的具体详情如下:
包路径:org.apache.karaf.cellar.core.Group
类名称:Group

Group介绍

[英]Cellar cluster group.
[中]酒窖群。

代码示例

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.core

/**
 * Add the {@link Group} list to the result.
 *
 * @param result the result where to add the group list.
 */
public void addGroupListToResult(ManageGroupResult result) {
  Set<Group> groups = groupManager.listAllGroups();
  for (Group g : groups) {
    if (g.getName() != null && !g.getName().isEmpty()) {
      result.getGroups().add(g);
    }
  }
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast

@Override
public Set<String> listGroupNames(Node node) {
  Set<String> names = new HashSet<String>();
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Map<String, Group> groups = listGroups();
    if (groups != null && !groups.isEmpty()) {
      for (Group group : groups.values()) {
        if (group.getNodes().contains(node)) {
          names.add(group.getName());
        }
      }
    }
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
  return names;
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast

@Override
public Map<String, Group> listGroups() {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Map<String, Group> res = new HashMap<String, Group>();
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Map<Node, Set<String>> nodes = getClusterGroups();
    Set<String> groups = convertStringToSet((String) localConfig.get(Configurations.GROUPS_KEY));
    groups.add(Configurations.DEFAULT_GROUP_NAME);
    for (String groupName : groups) {
      Group group = new Group(groupName);
      res.put(groupName, group);
      for (Map.Entry<Node, Set<String>> entry : nodes.entrySet()) {
        if (entry.getValue().contains(groupName)) {
          group.getNodes().add(entry.getKey());
        }
      }
    }
    return res;
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast

/**
 * List the nodes in a given cluster group.
 *
 * @param group the cluster group.
 * @return a Set with the nodes.
 */
@Override
public Set<Node> listNodesByGroup(Group group) {
  return group.getNodes();
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast

@Override
public void registerGroup(String groupName) {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    registerGroup(new Group(groupName));
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: apache/karaf-cellar

/**
 * List the nodes in a given cluster group.
 *
 * @param group the cluster group.
 * @return a Set with the nodes.
 */
@Override
public Set<Node> listNodesByGroup(Group group) {
  return group.getNodes();
}

代码示例来源:origin: apache/karaf-cellar

@Override
public void registerGroup(String groupName) {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    registerGroup(new Group(groupName));
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: apache/karaf-cellar

/**
 * Add the {@link Group} list to the result.
 *
 * @param result the result where to add the group list.
 */
public void addGroupListToResult(ManageGroupResult result) {
  Set<Group> groups = groupManager.listAllGroups();
  for (Group g : groups) {
    if (g.getName() != null && !g.getName().isEmpty()) {
      result.getGroups().add(g);
    }
  }
}

代码示例来源:origin: apache/karaf-cellar

@Override
public Set<String> listGroupNames(Node node) {
  Set<String> names = new HashSet<String>();
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Map<String, Group> groups = listGroups();
    if (groups != null && !groups.isEmpty()) {
      for (Group group : groups.values()) {
        if (group.getNodes().contains(node)) {
          names.add(group.getName());
        }
      }
    }
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
  return names;
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.core

/**
 * Add cluster groups where the local node is belonging.
 *
 * @param group the cluster group candidate for completion.
 * @return true if the cluster group has been accepted, false else.
 */
@Override
protected boolean acceptsGroup(Group group) {
  Node node = groupManager.getNode();
  if (group.getNodes().contains(node))
    return true;
  else return false;
}

代码示例来源:origin: apache/karaf-cellar

@Override
public Map<String, Group> listGroups() {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Map<String, Group> res = new HashMap<String, Group>();
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Map<Node, Set<String>> nodes = getClusterGroups();
    Set<String> groups = convertStringToSet((String) localConfig.get(Configurations.GROUPS_KEY));
    groups.add(Configurations.DEFAULT_GROUP_NAME);
    for (String groupName : groups) {
      Group group = new Group(groupName);
      res.put(groupName, group);
      for (Map.Entry<Node, Set<String>> entry : nodes.entrySet()) {
        if (entry.getValue().contains(groupName)) {
          group.getNodes().add(entry.getKey());
        }
      }
    }
    return res;
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast

@Override
public Group createGroup(String groupName) {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Map<String, Group> listGroups = listGroups();
    Group group = listGroups.get(groupName);
    if (group == null) {
      group = new Group(groupName);
      try {
        Configuration configuration = getConfigurationForGroups();
        if (configuration != null) {
          Dictionary<String, Object> properties = configuration.getProperties();
          if (properties != null && !properties.isEmpty()) {
            properties = copyGroupConfiguration(Configurations.DEFAULT_GROUP_NAME + '.', groupName + '.', properties);
            Set<String> groups = convertStringToSet((String) properties.get(Configurations.GROUPS_KEY));
            groups.add(groupName);
            properties.put(Configurations.GROUPS_KEY, convertSetToString(groups));
            updateConfiguration(configuration, properties);
          }
        }
      } catch (IOException e) {
        LOGGER.error("CELLAR HAZELCAST: failed to update cluster group configuration", e);
      }
    }
    return group;
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: apache/karaf-cellar

@Override
public boolean isLocalGroup(String groupName) {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Set<Group> localGroups = this.listLocalGroups();
    for (Group localGroup : localGroups) {
      if (localGroup.getName().equals(groupName)) {
        return true;
      }
    }
    return false;
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast

try {
  Thread.currentThread().setContextClassLoader(combinedClassLoader);
  String groupName = group.getName();
  group.getNodes().remove(getNode());
  listGroups().put(groupName, group);
  group.getNodes().add(node);
  Map<Node, Set<String>> map = getClusterGroups();
  Set<String> groupNames = (Set<String>) map.get(node);

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.core

/**
 * Accept the cluster groups which don't include the local node.
 *
 * @param group the cluster group to check.
 * @return true if the cluster group doesn't include the local node, false else.
 */
@Override
protected boolean acceptsGroup(Group group) {
  Node node = groupManager.getNode();
  if (group.getNodes().contains(node))
    return false;
  else return true;
}

代码示例来源:origin: apache/karaf-cellar

@Override
public Group createGroup(String groupName) {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Map<String, Group> listGroups = listGroups();
    Group group = listGroups.get(groupName);
    if (group == null) {
      group = new Group(groupName);
      try {
        Configuration configuration = getConfigurationForGroups();
        if (configuration != null) {
          Dictionary<String, Object> properties = configuration.getProperties();
          if (properties != null && !properties.isEmpty()) {
            properties = copyGroupConfiguration(Configurations.DEFAULT_GROUP_NAME + '.', groupName + '.', properties);
            Set<String> groups = convertStringToSet((String) properties.get(Configurations.GROUPS_KEY));
            groups.add(groupName);
            properties.put(Configurations.GROUPS_KEY, convertSetToString(groups));
            updateConfiguration(configuration, properties);
          }
        }
      } catch (IOException e) {
        LOGGER.error("CELLAR HAZELCAST: failed to update cluster group configuration", e);
      }
    }
    return group;
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: org.apache.karaf.cellar/org.apache.karaf.cellar.hazelcast

@Override
public boolean isLocalGroup(String groupName) {
  ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
  try {
    Thread.currentThread().setContextClassLoader(combinedClassLoader);
    Set<Group> localGroups = this.listLocalGroups();
    for (Group localGroup : localGroups) {
      if (localGroup.getName().equals(groupName)) {
        return true;
      }
    }
    return false;
  } finally {
    Thread.currentThread().setContextClassLoader(originalClassLoader);
  }
}

代码示例来源:origin: apache/karaf-cellar

try {
  Thread.currentThread().setContextClassLoader(combinedClassLoader);
  String groupName = group.getName();
  group.getNodes().remove(getNode());
  listGroups().put(groupName, group);
  group.getNodes().add(node);
  Map<Node, Set<String>> map = getClusterGroups();
  Set<String> groupNames = (Set<String>) map.get(node);

代码示例来源:origin: apache/karaf-cellar

/**
 * Accept the cluster groups which don't include the local node.
 *
 * @param group the cluster group to check.
 * @return true if the cluster group doesn't include the local node, false else.
 */
@Override
protected boolean acceptsGroup(Group group) {
  Node node = groupManager.getNode();
  if (group.getNodes().contains(node))
    return false;
  else return true;
}

代码示例来源:origin: apache/karaf-cellar

private void updateSync(String resource, Group group, String policy) throws Exception {
  System.out.print("\t" + resource + ": ");
  Configuration configuration = configurationAdmin.getConfiguration(Configurations.GROUP, null);
  if (configuration != null) {
    Dictionary properties = configuration.getProperties();
    if (properties == null)
      properties = new Properties();
    properties.put(group.getName() + "." + resource + ".sync", policy);
    configuration.update(properties);
    System.out.println("done");
  }
}

相关文章

微信公众号

最新文章

更多