Tabnine Logo
AbstractFolder
Code IndexAdd Tabnine to your IDE (free)

How to use
AbstractFolder
in
com.cloudbees.hudson.plugins.folder

Best Java code snippets using com.cloudbees.hudson.plugins.folder.AbstractFolder (Showing top 20 results out of 315)

origin: jenkinsci/cloudbees-folder-plugin

/**
 * Short-cut method that redundantly checks the specified permission (to catch any typos) and then escalates
 * authentication in order to save the {@link CredentialsStore}.
 *
 * @param p the permissions of the operation being performed.
 * @throws IOException if something goes wrong.
 */
private void checkedSave(Permission p) throws IOException {
  checkPermission(p);
  try (ACLContext oldContext = ACL.as(ACL.SYSTEM)) {
    FolderCredentialsProperty property =
        owner.getProperties().get(FolderCredentialsProperty.class);
    if (property == null) {
      synchronized (emptyProperties) {
        owner.getProperties().add(this);
        emptyProperties.remove(owner);
      }
    }
    // we assume it is ourselves
    owner.save();
  }
}
origin: jenkinsci/cloudbees-folder-plugin

/**
 * {@inheritDoc}
 */
@Override
protected void checkRename(String newName) {
  for (Job<?,?> job : getAllJobs()) {
    if (job.isBuilding()) {
      throw new Failure("Unable to rename a folder while a job inside it is building.");
    }
  }
  String blocker = renameBlocker();
  if (blocker != null) {
    throw new Failure(blocker);
  }
}
origin: org.jenkins-ci.plugins/cloudbees-folder

/**
 * For URL binding.
 *
 * @param name the name of the child.
 * @return the job or {@code null} if there is no such child.
 * @see #getUrlChildPrefix
 */
public I getJob(String name) {
  return getItem(name);
}
origin: org.jenkins-ci.plugins.workflow/workflow-cps-global-lib

private Collection<LibraryConfiguration> forGroup(@CheckForNull ItemGroup<?> group) {
  List<LibraryConfiguration> libraries = new ArrayList<>();
  for (ItemGroup<?> g = group; g instanceof AbstractFolder; g = ((AbstractFolder) g).getParent()) {
    FolderLibraries prop = ((AbstractFolder<?>) g).getProperties().get(FolderLibraries.class);
    if (prop != null) {
      libraries.addAll(prop.getLibraries());
    }
  }
  return libraries;
}
origin: org.jenkins-ci.plugins/cloudbees-folder

/**
 * Makes the folder disabled. Will have no effect if the folder type does not {@linkplain #supportsMakeDisabled()}.
 * @param disabled {@code true} if the folder should be disabled.
 * @throws IOException if the operation could not complete.
 * @since 6.1.0
 */
public void makeDisabled(boolean disabled) throws IOException {
  if (isDisabled() == disabled) {
    return; // noop
  }
  if (disabled && !supportsMakeDisabled()) {
    return; // do nothing if the disabling is unsupported
  }
  setDisabled(disabled);
  if (disabled && this instanceof Queue.Task) {
    Jenkins.getActiveInstance().getQueue().cancel((Queue.Task)this);
  }
  save();
  ItemListener.fireOnUpdated(this);
}
origin: org.jenkins-ci.plugins/cloudbees-folder

@Restricted(DoNotUse.class)
@RequirePOST
public void doDoRename(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException {
  if (!hasPermission(CONFIGURE)) {
    // rename is essentially delete followed by a create
    checkPermission(CREATE);
    checkPermission(DELETE);
  }
  String newName = req.getParameter("newName");
  Jenkins.checkGoodName(newName);
  String blocker = renameBlocker();
  if (blocker != null) {
    rsp.sendRedirect("rename?newName=" + URLEncoder.encode(newName, "UTF-8") + "&blocker=" + URLEncoder.encode(blocker, "UTF-8"));
    return;
  }
  renameTo(newName);
  rsp.sendRedirect2("../" + newName);
}
origin: org.jenkins-ci.plugins/cloudbees-folder

/**
 * {@inheritDoc}
 */
@Override
public CredentialsStore getStore(@CheckForNull ModelObject object) {
  if (object instanceof AbstractFolder) {
    final AbstractFolder<?> folder = AbstractFolder.class.cast(object);
    FolderCredentialsProperty property = folder.getProperties().get(FolderCredentialsProperty.class);
    if (property != null) {
      return property.getStore();
    }
    synchronized (emptyProperties) {
      property = emptyProperties.get(folder);
      if (property == null) {
        property = new FolderCredentialsProperty(folder);
        emptyProperties.put(folder, property);
      }
    }
    return property.getStore();
  }
  return null;
}
origin: jenkinsci/hubot-steps-plugin

AbstractFolder folder = (AbstractFolder) parent;
if (folderName == null) {
 folderName = folder.getName();
} else {
 folderName = folder.getName() + " ยป " + folderName;
HubotFolderProperty jfp = (HubotFolderProperty) folder.getProperties()
  .get(HubotFolderProperty.class);
if (jfp != null) {
origin: org.jenkins-ci.plugins/cloudbees-folder

  reporters.add(metric.reporter());
for (AbstractFolderProperty<?> p : getProperties()) {
  for (FolderHealthMetric metric : p.getHealthMetrics()) {
    recursive = recursive || metric.getType().isRecursive();
  stack.push(getItems());
  if (topLevelOnly) {
    while (!stack.isEmpty()) {
  for (Item item: getItems()) {
    for (FolderHealthMetric.Reporter reporter : reporters) {
      reporter.observe(item);
  reports.addAll(reporter.report());
for (AbstractFolderProperty<?> p : getProperties()) {
  reports.addAll(p.getHealthReports());
origin: org.jenkins-ci.plugins/cloudbees-folder

@Restricted(NoExternalUse.class)
@RequirePOST
public void doConfigSubmit(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException, Descriptor.FormException {
  checkPermission(CONFIGURE);
    properties.rebuild(req, json, getDescriptor().getPropertyDescriptors());
    for (AbstractFolderProperty p : properties) {
      p.setOwner(this);
    icon.setOwner(this);
    submit(req, rsp);
    makeDisabled(json.optBoolean("disable"));
    save();
    bc.commit();
  } finally {
      namingStrategy.checkName(name);
    FormApply.success(getSuccessfulDestination()).generateResponse(req, rsp, this);
origin: jenkinsci/cloudbees-folder-plugin

public void delete() throws IOException, InterruptedException {
  checkPermission(DELETE);
  if (!ownsRegistration && ItemDeletion.isRegistered(this)) {
    throw new Failure(Messages.AbstractFolder_BeingDeleted(getPronoun()));
              buildsInProgress.size(), getFullDisplayName()
          ));
      performDelete();
  getParent().onDeleted(AbstractFolder.this);
  Jenkins.get().rebuildDependencyGraphAsync();
origin: org.jenkins-ci.plugins/config-file-provider

@Override
public void save(Config config) {
  configs.remove(config);
  configs.add(config);
  try {
    getOwner().save();
  } catch (IOException e) {
    throw new RuntimeException("failed to save config to store", e);
  }
}
origin: org.jenkins-ci.plugins/cloudbees-folder

/**
 * Allows a subclass to block renames under dynamic conditions.
 * @return a message if rename should currently be prohibited, or null to allow
 */
@CheckForNull
protected String renameBlocker() {
  for (Job<?,?> job : getAllJobs()) {
    if (job.isBuilding()) {
      return "Unable to rename a folder while a job inside it is building.";
    }
  }
  return null;
}
origin: jenkinsci/multi-branch-project-plugin

if (!folder.hasPermission(Item.CONFIGURE)) {
  return FormValidation.ok();
origin: jenkinsci/cloudbees-folder-plugin

/**
 * {@inheritDoc}
 */
@Override
public CredentialsStore getStore(@CheckForNull ModelObject object) {
  if (object instanceof AbstractFolder) {
    final AbstractFolder<?> folder = AbstractFolder.class.cast(object);
    FolderCredentialsProperty property = folder.getProperties().get(FolderCredentialsProperty.class);
    if (property != null) {
      return property.getStore();
    }
    synchronized (emptyProperties) {
      property = emptyProperties.get(folder);
      if (property == null) {
        property = new FolderCredentialsProperty(folder);
        emptyProperties.put(folder, property);
      }
    }
    return property.getStore();
  }
  return null;
}
origin: jenkinsci/hubot-steps-plugin

AbstractFolder folder = (AbstractFolder) parent;
if (folderName == null) {
 folderName = folder.getName();
} else {
 folderName = folder.getName() + " ยป " + folderName;
HubotFolderProperty jfp = (HubotFolderProperty) folder.getProperties()
  .get(HubotFolderProperty.class);
if (jfp != null) {
origin: jenkinsci/cloudbees-folder-plugin

  reporters.add(metric.reporter());
for (AbstractFolderProperty<?> p : getProperties()) {
  for (FolderHealthMetric metric : p.getHealthMetrics()) {
    recursive = recursive || metric.getType().isRecursive();
  stack.push(getItems());
  if (topLevelOnly) {
    while (!stack.isEmpty()) {
  for (Item item: getItems()) {
    for (FolderHealthMetric.Reporter reporter : reporters) {
      reporter.observe(item);
  reports.addAll(reporter.report());
for (AbstractFolderProperty<?> p : getProperties()) {
  reports.addAll(p.getHealthReports());
origin: jenkinsci/cloudbees-folder-plugin

@Restricted(NoExternalUse.class)
@RequirePOST
public void doConfigSubmit(StaplerRequest req, StaplerResponse rsp) throws IOException, ServletException, Descriptor.FormException {
  checkPermission(CONFIGURE);
    properties.rebuild(req, json, getDescriptor().getPropertyDescriptors());
    for (AbstractFolderProperty p : properties) {
      p.setOwner(this);
    icon.setOwner(this);
    submit(req, rsp);
    makeDisabled(json.optBoolean("disable"));
    save();
    bc.commit();
  } finally {
      namingStrategy.checkName(name);
    FormApply.success(getSuccessfulDestination()).generateResponse(req, rsp, this);
origin: org.jenkins-ci.plugins/cloudbees-folder

public void delete() throws IOException, InterruptedException {
  checkPermission(DELETE);
  if (!ownsRegistration && ItemDeletion.isRegistered(this)) {
    throw new Failure(Messages.AbstractFolder_BeingDeleted(getPronoun()));
              buildsInProgress.size(), getFullDisplayName()
          ));
      performDelete();
  getParent().onDeleted(AbstractFolder.this);
  Jenkins.getActiveInstance().rebuildDependencyGraphAsync();
origin: jenkinsci/cloudbees-folder-plugin

/**
 * Makes the folder disabled. Will have no effect if the folder type does not {@linkplain #supportsMakeDisabled()}.
 * @param disabled {@code true} if the folder should be disabled.
 * @throws IOException if the operation could not complete.
 * @since 6.1.0
 */
public void makeDisabled(boolean disabled) throws IOException {
  if (isDisabled() == disabled) {
    return; // noop
  }
  if (disabled && !supportsMakeDisabled()) {
    return; // do nothing if the disabling is unsupported
  }
  setDisabled(disabled);
  if (disabled && this instanceof Queue.Task) {
    Jenkins.get().getQueue().cancel((Queue.Task)this);
  }
  save();
  ItemListener.fireOnUpdated(this);
}
com.cloudbees.hudson.plugins.folderAbstractFolder

Javadoc

A general-purpose ItemGroup. Base for Folder and ComputedFolder.

Extending Folders UI
As any other Item type, folder types support extension of UI via Actions. These actions can be persisted or added via TransientActionFactory. See this page for more details about actions. In folders actions provide the following features:

  • Left sidepanel hyperlink, which opens the page specified by action's index.jelly.
  • Optional summary boxes on the main panel, which may be defined by summary.jelly.

Most used methods

  • getProperties
    May be used to enumerate or remove properties. To add properties, use #addProperty.
  • getAllJobs
  • getItem
  • getParent
  • hasPermission
  • save
  • addAction
  • addOrReplaceAction
    Add an action, replacing any existing actions of the (exact) same class. Note: calls to #getAllActio
  • addView
  • checkPermission
  • checkRename
  • childNameGenerator
  • checkRename,
  • childNameGenerator,
  • doConfigSubmit,
  • getACL,
  • getAbsoluteUrl,
  • getActions,
  • getBuildHealthReports,
  • getDescriptor,
  • getDisplayName,
  • getFolderViews

Popular in Java

  • Running tasks concurrently on multiple threads
  • onCreateOptionsMenu (Activity)
  • getResourceAsStream (ClassLoader)
  • putExtra (Intent)
  • MessageFormat (java.text)
    Produces concatenated messages in language-neutral way. New code should probably use java.util.Forma
  • Hashtable (java.util)
    A plug-in replacement for JDK1.5 java.util.Hashtable. This version is based on org.cliffc.high_scale
  • List (java.util)
    An ordered collection (also known as a sequence). The user of this interface has precise control ove
  • Map (java.util)
    A Map is a data structure consisting of a set of keys and values in which each key is mapped to a si
  • SortedMap (java.util)
    A map that has its keys ordered. The sorting is according to either the natural ordering of its keys
  • BoxLayout (javax.swing)
  • Top plugins for Android Studio
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now