package com.perforce.workspace.tjuricek.initializer.model; import java.util.*; /** * Creates a sorted order of loaded PerforceItems with several helper accessor * methods. * <p/> * It'll be common for one PerforceItem to depend upon information from another * item. For example, you probably want to create a client, then later, * use that client to add files against. This collection will provide access to * finding those dependent elements quickly. */ public class PerforceItemSet extends TreeSet<PerforceItem> implements SortedSet<PerforceItem> { public PerforceItemSet() { super(new PerforceItem.PerforceItemComparator()); } /** * Checks that a PerforceUser definition exists with the specified login. * Used to help validate data. */ public boolean hasUser(String login) { for (PerforceUser user : this.getUsers()) { if (user.getLogin().equals(login)) { return true; } } return false; } public List<PerforceUser> getUsers() { ArrayList<PerforceUser> users = new ArrayList<PerforceUser>(); for (PerforceItem item : this) { if (item.getPerforceUser() != null) { users.add(item.getPerforceUser()); } } return users; } public PerforceUser getUser(String login) { for (PerforceUser user : getUsers()) { if (user.getLogin().equals(login)) { return user; } } return null; } public List<PerforceClient> getClients() { ArrayList<PerforceClient> clients = new ArrayList<PerforceClient>(); for (PerforceItem item : this){ if (item.getPerforceClient() != null) { clients.add(item.getPerforceClient()); } } return clients; } public List<PerforceChangelist> getChangelists() { ArrayList<PerforceChangelist> changelists = new ArrayList<PerforceChangelist>(); for (PerforceItem item : this) { if (item.getPerforceChangelist() != null) { changelists.add(item.getPerforceChangelist()); } } return changelists; } public List<PerforceDepot> getDepots() { ArrayList<PerforceDepot> changelists = new ArrayList<PerforceDepot>(); for (PerforceItem item : this) { if (item.getPerforceDepot() != null) { changelists.add(item.getPerforceDepot()); } } return changelists; } public List<PerforceTrigger> getTriggers() { ArrayList<PerforceTrigger> triggers = new ArrayList<PerforceTrigger>(); for (PerforceItem item : this) { if (item.getPerforceTrigger() != null) { triggers.add(item.getPerforceTrigger()); } } return triggers; } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#2 | 9165 | tjuricek |
Some documentation framework and a fatjar style distribution for the initializer to run outside of a gradle plugin. Upped the version to 0.1.2, but this may need some testing before it's really guaranteed to work in standalone mode |
||
#1 | 9088 | tjuricek |
0.1.0 First version of the initializer. This currently requires setting up a local version of the p4java_ext project, since that project is awating approval into the main jcenter repository. |