Interface Item
- All Superinterfaces:
AccessControlled,FullyNamed,FullyNamedModelObject,ModelObject,Named,OnMaster,PersistenceRoot,Saveable,SearchableModelObject,SearchItem
- All Known Subinterfaces:
BuildableItem,BuildableItemWithBuildWrappers,ParameterizedJobMixIn.ParameterizedJob<JobT,,RunT> SCMedItem,TopLevelItem,TriggeredItem
- All Known Implementing Classes:
AbstractItem,AbstractProject,AbstractTopLevelItem,FreeStyleProject,Job,Project,ViewJob
Every Item is hosted in an ItemGroup called "parent",
and some Items are ItemGroups. This form a tree
structure, which is rooted at Jenkins.
Unlike file systems, where a file can be moved from one directory
to another, Item inherently belongs to a single ItemGroup
and that relationship will not change.
Think of
Windows device manager
— an HDD always show up under 'Disk drives' and it can never be moved to another parent.
Similarly, ItemGroup is not a generic container. Each subclass
of ItemGroup can usually only host a certain limited kinds of
Items.
Items have unique names that distinguish themselves
among their siblings uniquely. The names can be combined by '/' to form an
item full name, which uniquely identifies an Item inside the whole Jenkins.
- Author:
- Kohsuke Kawaguchi
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Permissionstatic final Permissionstatic final Permissionstatic final Permissionstatic final Permissionstatic final Permissionstatic final PermissionAbility to view configuration details.static final PermissionGroupstatic final Permissionstatic final Permissionstatic final Permission -
Method Summary
Modifier and TypeMethodDescriptionvoiddelete()Deletes this item.default StringDeprecated.This method shall NEVER be used during HTML page rendering, as it won't work with network set up like Apache reverse proxy.Collection<? extends Job> Gets all the jobs that thisItemcontains as descendants.Gets the human readable short name of this item.Gets the full name of this item, like "abc/def/ghi".getName()Gets the name of the item.Gets the parent that contains this item.default StringgetRelativeNameFrom(Item item) Short forgetRelativeNameFrom(item.getParent())default StringGets the relative name to this item from the specified group.default SearchGroupReturns the URL of this item relative to the parentItemGroup.getUrl()Returns the URL of this item relative to the context root of the application.voidonCopiedFrom(Item src) When aItemis copied from existing one, the files are first copied on the file system, then it will be loaded, then this method will be invoked to perform any implementation-specific work.default voidWhen an item is created from scratch (instead of copied), this method will be invoked.voidCalled right after when aItemis loaded from disk.voidsave()Save the settings to a file.Methods inherited from interface hudson.security.AccessControlled
checkAnyPermission, checkPermission, getACL, hasAnyPermission, hasPermission, hasPermission, hasPermission2Methods inherited from interface jenkins.model.FullyNamedModelObject
getFullDisplayNameMethods inherited from interface hudson.model.PersistenceRoot
getRootDirMethods inherited from interface hudson.search.SearchableModelObject
getSearchMethods inherited from interface hudson.search.SearchItem
getSearchIcon, getSearchIndex, getSearchName, getSearchUrl
-
Field Details
-
Method Details
-
getParent
Gets the parent that contains this item. -
getAllJobs
Collection<? extends Job> getAllJobs()Gets all the jobs that thisItemcontains as descendants. -
getName
Gets the name of the item.The name must be unique among other
Items that belong to the same parent.This name is also used for directory name, so it cannot contain any character that's not allowed on the file system.
-
getFullName
Gets the full name of this item, like "abc/def/ghi".Full name consists of
names ofItems that lead from the rootJenkinsto thisItem, separated by '/'. This is the unique name that identifies thisIteminside the wholeJenkins.- Specified by:
getFullNamein interfaceFullyNamed- Returns:
- the full name of this object.
- See Also:
-
getDisplayName
String getDisplayName()Gets the human readable short name of this item.This method should try to return a short concise human readable string that describes this item. The string need not be unique.
The returned string should not include the display names of
ancestor items.- Specified by:
getDisplayNamein interfaceModelObject
-
getRelativeNameFrom
Gets the relative name to this item from the specified group. -
getRelativeNameFrom
Short forgetRelativeNameFrom(item.getParent())- Returns:
- String like "../foo/bar".
nullif one of item parents is not anItem. - Since:
- 1.419
-
getUrl
String getUrl()Returns the URL of this item relative to the context root of the application.- Returns:
- URL that ends with '/'.
- See Also:
-
getShortUrl
String getShortUrl()Returns the URL of this item relative to the parentItemGroup.- Returns:
- URL that ends with '/'.
- See Also:
-
getAbsoluteUrl
Deprecated.This method shall NEVER be used during HTML page rendering, as it won't work with network set up like Apache reverse proxy. This method is only intended for the remote API clients who cannot resolve relative references (even this won't work for the same reason, which should be fixed.)Returns the absolute URL of this item. This relies on the currentStaplerRequest2to figure out what the host name is, so can be used only during processing client requests.- Returns:
- absolute URL.
- Throws:
IllegalStateException- if the method is invoked outside the HTTP request processing.
-
onLoad
Called right after when aItemis loaded from disk. This is an opportunity to do a post load processing.- Parameters:
name- Name of the directory (not a path --- just the name portion) from which the configuration was loaded. This usually becomes thenameof this item.- Throws:
IOException
-
onCopiedFrom
When aItemis copied from existing one, the files are first copied on the file system, then it will be loaded, then this method will be invoked to perform any implementation-specific work. -
onCreatedFromScratch
default void onCreatedFromScratch()When an item is created from scratch (instead of copied), this method will be invoked. Used as the post-construction initialization.- Since:
- 1.374
-
save
Save the settings to a file. UseItems.getConfigFile(Item)orAbstractItem.getConfigFile()to obtain the file to save the data.- Specified by:
savein interfaceSaveable- Throws:
IOException- if the persistence failed.
-
delete
Deletes this item.- Throws:
IOExceptionInterruptedException
-
getSearchGroup
- Specified by:
getSearchGroupin interfaceSearchItem
-