hudson.model.Job.getCascadingChildrenNames()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(12.8k)|赞(0)|评价(0)|浏览(96)

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

Job.getCascadingChildrenNames介绍

暂无

代码示例

代码示例来源:origin: org.eclipse.hudson/hudson-core

public void cleanCascading() throws IOException{
  Set<String> cascadingChildrenToRemove = new HashSet();
  for (String cascadingChild : getCascadingChildrenNames()) {
    TopLevelItem tlItem = Hudson.getInstance().getItem(cascadingChild);
    if ((tlItem != null) && getClass().isAssignableFrom(tlItem.getClass())) {
      JobT cascadingChildJob = (JobT) tlItem;
      if (cascadingChildJob.getCascadingProject() != this) {
        cascadingChildrenToRemove.add(cascadingChild);
      }
    }else{
      cascadingChildrenToRemove.add(cascadingChild);
    }
  }
  //390862: Can't delete jobs copied from cascading parent
  if (!cascadingChildrenToRemove.isEmpty()) {
    cascadingChildrenNames.removeAll(cascadingChildrenToRemove);
  }
  //406889: Cleanup the non overridden job properties or properties with no values in config.xml
  save();
}

代码示例来源:origin: org.eclipse.hudson/hudson-core

/**
 * Recursively unlink specified project from cascading hierarchy.
 *
 * @param cascadingProject cascading project to start from.
 * @param projectToUnlink project that should be unlinked.
 * @return true if project was unlinked, false - if cascadingProject or
 * projectToUnlink is Null
 * @throws java.io.IOException if cascading project couldn't be saved.
 */
public static boolean unlinkProjectFromCascadingParents(ICascadingJob cascadingProject, String projectToUnlink)
    throws IOException {
  if (null != cascadingProject && null != projectToUnlink) {
    TopLevelItem item = Hudson.getInstance().getItem(projectToUnlink);
    if (item instanceof Job) {
      Job job = (Job) item;
      Set<String> set = new HashSet<String>(job.getCascadingChildrenNames());
      set.add(projectToUnlink);
      return unlinkProjectFromCascadingParents(cascadingProject, set);
    }
  }
  return false;
}

代码示例来源:origin: org.eclipse.hudson.main/hudson-core

/**
 * Recursively unlink specified project from cascading hierarchy.
 *
 * @param cascadingProject cascading project to start from.
 * @param projectToUnlink project that should be unlinked.
 * @return true if project was unlinked, false - if cascadingProject or projectToUnlink is Null
 * @throws java.io.IOException if cascading project couldn't be saved.
 */
public static boolean unlinkProjectFromCascadingParents(ICascadingJob cascadingProject, String projectToUnlink)
  throws IOException {
  if (null != cascadingProject && null != projectToUnlink) {
    Job job = Functions.getItemByName(Hudson.getInstance().getAllItems(Job.class), projectToUnlink);
    Set<String> set = new HashSet<String>(job.getCascadingChildrenNames());
    set.add(projectToUnlink);
    return unlinkProjectFromCascadingParents(cascadingProject, set);
  }
  return false;
}

代码示例来源:origin: org.jvnet.hudson.main/hudson-core

/**
 * Recursively unlink specified project from cascading hierarchy.
 *
 * @param cascadingProject cascading project to start from.
 * @param projectToUnlink project that should be unlinked.
 * @return true if project was unlinked, false - if cascadingProject or projectToUnlink is Null
 * @throws java.io.IOException if cascading project couldn't be saved.
 */
public static boolean unlinkProjectFromCascadingParents(ICascadingJob cascadingProject, String projectToUnlink)
  throws IOException {
  if (null != cascadingProject && null != projectToUnlink) {
    Job job = Functions.getItemByName(Hudson.getInstance().getAllItems(Job.class), projectToUnlink);
    if (null != job) {
      Set<String> set = new HashSet<String>(job.getCascadingChildrenNames());
      set.add(projectToUnlink);
      return unlinkProjectFromCascadingParents(cascadingProject, set);
    }
  }
  return false;
}

代码示例来源:origin: hudson/hudson-2.x

/**
 * Recursively unlink specified project from cascading hierarchy.
 *
 * @param cascadingProject cascading project to start from.
 * @param projectToUnlink project that should be unlinked.
 * @return true if project was unlinked, false - if cascadingProject or projectToUnlink is Null
 * @throws java.io.IOException if cascading project couldn't be saved.
 */
public static boolean unlinkProjectFromCascadingParents(ICascadingJob cascadingProject, String projectToUnlink)
  throws IOException {
  if (null != cascadingProject && null != projectToUnlink) {
    Job job = Functions.getItemByName(Hudson.getInstance().getAllItems(Job.class), projectToUnlink);
    if (null != job) {
      Set<String> set = new HashSet<String>(job.getCascadingChildrenNames());
      set.add(projectToUnlink);
      return unlinkProjectFromCascadingParents(cascadingProject, set);
    }
  }
  return false;
}

代码示例来源:origin: org.eclipse.hudson.main/hudson-core

/**
 * Returns possible cascading parents for current job, which are filtered by type and checked for avoidness cyclic
 * dependency
 *
 * @param type project type.
 * @param currentJob current job instance
 * @param <T> Item
 * @return list of cascading parents.
 */
@SuppressWarnings("unchecked")
public static <T extends Item> List<Job> getCascadingParents(Class<T> type, Job currentJob) {
  List<T> allItems = Hudson.getInstance().getAllItems(type);
  List<Job> result = new ArrayList<Job>(allItems.size());
  for (T item : allItems) {
    Job job = (Job) item;
    if (!StringUtils.equals(currentJob.getName(), job.getName())
      && !hasCyclicCascadingLink(job, currentJob.getCascadingChildrenNames())) {
      result.add(job);
    }
  }
  return result;
}

代码示例来源:origin: org.eclipse.hudson/hudson-core

/**
 * Checks whether cascadingCandidate project can produce cycle cascading
 * dependencies.
 *
 * @param cascadingCandidate candidate.
 * @param cascadingChildren children of given job.
 * @return false - if cyclic cascading dependency is not possible, true -
 * otherwise.
 */
@SuppressWarnings("unchecked")
public static boolean hasCyclicCascadingLink(Job cascadingCandidate, Set<String> cascadingChildren) {
  if (null != cascadingCandidate && CollectionUtils.isNotEmpty(cascadingChildren)) {
    if (cascadingChildren.contains(cascadingCandidate.getName())) {
      return true;
    }
    for (String childName : cascadingChildren) {
      TopLevelItem item = Hudson.getInstance().getItem(childName);
      if (item instanceof Job) {
        Job job = (Job) item;
        if (hasCyclicCascadingLink(cascadingCandidate, job.getCascadingChildrenNames())) {
          return true;
        }
      }
    }
  }
  return false;
}

代码示例来源:origin: hudson/hudson-2.x

/**
 * Returns possible cascading parents for current job, which are filtered by type and checked for avoidness cyclic
 * dependency
 *
 * @param type project type.
 * @param currentJob current job instance
 * @param <T> Item
 * @return list of cascading parents.
 */
@SuppressWarnings("unchecked")
public static <T extends Item> List<Job> getCascadingParents(Class<T> type, Job currentJob) {
  Job currentParent = currentJob.getCascadingProject();
  if (type.isInstance(currentParent) && !currentParent.hasPermission(Item.READ)) {
    return Collections.EMPTY_LIST; // user can't see parent so don't let them change it
  }
  List<T> allItems = Hudson.getInstance().getAllItems(type);
  List<Job> result = new ArrayList<Job>(allItems.size());
  for (T item : allItems) {
    Job job = (Job) item;
    if (!StringUtils.equals(currentJob.getName(), job.getName())
      && !hasCyclicCascadingLink(job, currentJob.getCascadingChildrenNames())) {
      result.add(job);
    }
  }
  return result;
}

代码示例来源:origin: org.jvnet.hudson.main/hudson-core

/**
 * Returns possible cascading parents for current job, which are filtered by type and checked for avoidness cyclic
 * dependency
 *
 * @param type project type.
 * @param currentJob current job instance
 * @param <T> Item
 * @return list of cascading parents.
 */
@SuppressWarnings("unchecked")
public static <T extends Item> List<Job> getCascadingParents(Class<T> type, Job currentJob) {
  Job currentParent = currentJob.getCascadingProject();
  if (type.isInstance(currentParent) && !currentParent.hasPermission(Item.READ)) {
    return Collections.EMPTY_LIST; // user can't see parent so don't let them change it
  }
  List<T> allItems = Hudson.getInstance().getAllItems(type);
  List<Job> result = new ArrayList<Job>(allItems.size());
  for (T item : allItems) {
    Job job = (Job) item;
    if (!StringUtils.equals(currentJob.getName(), job.getName())
      && !hasCyclicCascadingLink(job, currentJob.getCascadingChildrenNames())) {
      result.add(job);
    }
  }
  return result;
}

代码示例来源:origin: org.eclipse.hudson/hudson-core

/**
 * Returns possible cascading parents for current job, which are filtered by
 * type and checked for avoidness cyclic dependency
 *
 * @param type project type.
 * @param currentJob current job instance
 * @param <T> Item
 * @return list of cascading parents.
 */
@SuppressWarnings("unchecked")
public static <T extends Item> List<Job> getCascadingParents(Class<T> type, Job currentJob) {
  Job currentParent = currentJob.getCascadingProject();
  if (type.isInstance(currentParent) && !currentParent.hasPermission(Item.READ)) {
    return Collections.EMPTY_LIST; // user can't see parent so don't let them change it
  }
  List<T> allItems = Hudson.getInstance().getAllItems(type);
  List<Job> result = new ArrayList<Job>(allItems.size());
  for (T item : allItems) {
    Job job = (Job) item;
    if (!StringUtils.equals(currentJob.getName(), job.getName())
        && !hasCyclicCascadingLink(job, currentJob.getCascadingChildrenNames())) {
      result.add(job);
    }
  }
  return result;
}

代码示例来源:origin: hudson/hudson-2.x

/**
 * Checks whether cascadingCandidate project can produce cycle cascading dependencies.
 *
 * @param cascadingCandidate candidate.
 * @param cascadingChildren children of given job.
 * @return false - if cyclic cascading dependency is not possible, true - otherwise.
 */
@SuppressWarnings("unchecked")
public static boolean hasCyclicCascadingLink(Job cascadingCandidate, Set<String> cascadingChildren) {
  if (null != cascadingCandidate && CollectionUtils.isNotEmpty(cascadingChildren)) {
    if (cascadingChildren.contains(cascadingCandidate.getName())) {
      return true;
    }
    for (String childName : cascadingChildren) {
      Job job = Functions.getItemByName(Hudson.getInstance().getAllItems(Job.class), childName);
      if (null != job && hasCyclicCascadingLink(cascadingCandidate, job.getCascadingChildrenNames())) {
        return true;
      }
    }
  }
  return false;
}

代码示例来源:origin: org.eclipse.hudson.main/hudson-core

/**
 * Checks whether cascadingCandidate project can produce cycle cascading dependencies.
 *
 * @param cascadingCandidate candidate.
 * @param cascadingChildren children of given job.
 * @return false - if cyclic cascading dependency is not possible, true - otherwise.
 */
@SuppressWarnings("unchecked")
public static boolean hasCyclicCascadingLink(Job cascadingCandidate, Set<String> cascadingChildren) {
  if (null != cascadingCandidate && CollectionUtils.isNotEmpty(cascadingChildren)) {
    if (cascadingChildren.contains(cascadingCandidate.getName())) {
      return true;
    }
    for (String childName : cascadingChildren) {
      Job job = Functions.getItemByName(Hudson.getInstance().getAllItems(Job.class), childName);
      if (hasCyclicCascadingLink(cascadingCandidate, job.getCascadingChildrenNames())) {
        return true;
      }
    }
  }
  return false;
}

代码示例来源:origin: org.jvnet.hudson.main/hudson-core

/**
 * Checks whether cascadingCandidate project can produce cycle cascading dependencies.
 *
 * @param cascadingCandidate candidate.
 * @param cascadingChildren children of given job.
 * @return false - if cyclic cascading dependency is not possible, true - otherwise.
 */
@SuppressWarnings("unchecked")
public static boolean hasCyclicCascadingLink(Job cascadingCandidate, Set<String> cascadingChildren) {
  if (null != cascadingCandidate && CollectionUtils.isNotEmpty(cascadingChildren)) {
    if (cascadingChildren.contains(cascadingCandidate.getName())) {
      return true;
    }
    for (String childName : cascadingChildren) {
      Job job = Functions.getItemByName(Hudson.getInstance().getAllItems(Job.class), childName);
      if (null != job && hasCyclicCascadingLink(cascadingCandidate, job.getCascadingChildrenNames())) {
        return true;
      }
    }
  }
  return false;
}

代码示例来源:origin: org.eclipse.hudson/hudson-core

@Override
protected void performDelete() throws IOException, InterruptedException {
  // if a build is in progress. Cancel it.
  RunT lb = getLastBuild();
  if (lb != null) {
    Executor e = lb.getExecutor();
    if (e != null) {
      e.interrupt();
      // should we block until the build is cancelled?
    }
  }
  Set<String> cascadingChildren = new HashSet(getCascadingChildrenNames());
  for (String cascadingChild : cascadingChildren) {
    Item item = Hudson.getInstance().getItem(cascadingChild);
    if (item != null && item instanceof Job) {
      Job childJob = (Job) item;
      if (this.equals(childJob.getCascadingProject())) {
        childJob.clearCascadingProject();
      }
    }
  }
  clearCascadingProject();
  cascadingChildrenNames.clear();
  super.performDelete();
}

代码示例来源:origin: org.jvnet.hudson.main/hudson-core

Set<String> cascadingChildrenNames = job.getCascadingChildrenNames();

代码示例来源:origin: org.eclipse.hudson/hudson-core

Set<String> cascadingChildrenNames = job.getCascadingChildrenNames();

代码示例来源:origin: org.eclipse.hudson.main/hudson-core

Set<String> cascadingChildrenNames = job.getCascadingChildrenNames();
if (null != cascadingChildrenNames) {
  for (String childName : cascadingChildrenNames) {

代码示例来源:origin: org.jvnet.hudson.main/hudson-core

Set<String> cascadingChildrenNames = job.getCascadingChildrenNames();
if (null != cascadingChildrenNames) {
  for (String childName : cascadingChildrenNames) {

代码示例来源:origin: hudson/hudson-2.x

Set<String> cascadingChildrenNames = job.getCascadingChildrenNames();
if (null != cascadingChildrenNames) {
  for (String childName : cascadingChildrenNames) {

代码示例来源:origin: org.eclipse.hudson/hudson-core

Set<String> cascadingChildrenNames = job.getCascadingChildrenNames();
if (null != cascadingChildrenNames) {
  for (String childName : cascadingChildrenNames) {

相关文章

微信公众号

最新文章

更多

Job类方法