Interface Item
- All Superinterfaces:
AccessControlled
,ModelObject
,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 Item
s are ItemGroup
s. 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
Item
s.
Item
s have unique name
s 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
Modifier and TypeFieldDescriptionstatic final Permission
static final Permission
static final Permission
static final Permission
static final Permission
static final Permission
static final Permission
Ability to view configuration details.static final PermissionGroup
static final Permission
static final Permission
static final Permission
-
Method Summary
Modifier and TypeMethodDescriptionvoid
delete()
Deletes this item.default String
Deprecated.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 thisItem
contains as descendants.Gets the human readable short name of this item.Works likegetDisplayName()
but return the full path that includes all the display names of the ancestors.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 String
getRelativeNameFrom
(Item item) Short forgetRelativeNameFrom(item.getParent())
default String
Gets the relative name to this item from the specified group.Returns the URL of this item relative to the parentItemGroup
.getUrl()
Returns the URL of this item relative to the context root of the application.void
onCopiedFrom
(Item src) When aItem
is 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 void
When an item is created from scratch (instead of copied), this method will be invoked.void
Called right after when aItem
is loaded from disk.void
save()
Save the settings to a file.Methods inherited from interface hudson.security.AccessControlled
checkAnyPermission, checkPermission, getACL, hasAnyPermission, hasPermission, hasPermission, hasPermission2
Methods inherited from interface hudson.model.PersistenceRoot
getRootDir
Methods inherited from interface hudson.search.SearchableModelObject
getSearch
Methods inherited from interface hudson.search.SearchItem
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 thisItem
contains as descendants. -
getName
String getName()Gets the name of the item.The name must be unique among other
Item
s 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.
- See Also:
-
getFullName
String getFullName()Gets the full name of this item, like "abc/def/ghi".Full name consists of
name
s ofItem
s that lead from the rootJenkins
to thisItem
, separated by '/'. This is the unique name that identifies thisItem
inside the wholeJenkins
.- 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:
getDisplayName
in interfaceModelObject
-
getFullDisplayName
String getFullDisplayName()Works likegetDisplayName()
but return the full path that includes all the display names of the ancestors. -
getRelativeNameFrom
Gets the relative name to this item from the specified group. -
getRelativeNameFrom
Short forgetRelativeNameFrom(item.getParent())
- Returns:
- String like "../foo/bar".
null
if 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 currentStaplerRequest2
to 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 aItem
is 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 thename
of this item.- Throws:
IOException
-
onCopiedFrom
When aItem
is 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:
save
in interfaceSaveable
- Throws:
IOException
- if the persistence failed.
-
delete
Deletes this item.- Throws:
IOException
InterruptedException
-