Skip to content

Commit

Permalink
[FIXED JENKINS-20008] Added DirectlyModifiableTopLevelItemGroup.
Browse files Browse the repository at this point in the history
Originally-Committed-As: 1d21017e3b54edb36a58aa7d7658250b4f221c80
  • Loading branch information
jglick committed Dec 18, 2013
1 parent 8273c5c commit 6855ed0
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions test/src/main/java/org/jvnet/hudson/test/MockFolder.java
Expand Up @@ -54,8 +54,8 @@
import java.util.Set;
import java.util.TreeMap;
import javax.servlet.ServletException;
import jenkins.model.DirectlyModifiableTopLevelItemGroup;
import jenkins.model.Jenkins;
import jenkins.model.ModifiableTopLevelItemGroup;
import org.kohsuke.stapler.StaplerFallback;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
Expand All @@ -69,7 +69,7 @@
* @since 1.494
*/
@SuppressWarnings({"unchecked", "rawtypes"}) // the usual API mistakes
public class MockFolder extends AbstractItem implements ModifiableTopLevelItemGroup, TopLevelItem, ModifiableViewGroup, StaplerFallback {
public class MockFolder extends AbstractItem implements DirectlyModifiableTopLevelItemGroup, TopLevelItem, ModifiableViewGroup, StaplerFallback {

private transient Map<String,TopLevelItem> items = new TreeMap<String,TopLevelItem>();
private final List<View> views = new ArrayList<View>(Collections.singleton(new AllView("All", this)));
Expand Down Expand Up @@ -187,6 +187,18 @@ public <T extends TopLevelItem> T createProject(Class<T> type, String name) thro
items.remove(item.getName());
}

@Override public boolean canAdd(TopLevelItem item) {
return true;
}

@Override synchronized public <I extends TopLevelItem> I add(I item, String name) throws IOException, IllegalArgumentException {
if (items.containsKey(name)) {
throw new IllegalArgumentException("already an item '" + name + "'");
}
items.put(name, item);
return item;
}

@Override public TopLevelItemDescriptor getDescriptor() {
return Jenkins.getInstance().getDescriptorByType(DescriptorImpl.class);
}
Expand Down

0 comments on commit 6855ed0

Please sign in to comment.