Class Stream
- java.lang.Object
-
- com.perforce.p4java.impl.generic.core.ServerResource
-
- com.perforce.p4java.impl.generic.core.StreamSummary
-
- com.perforce.p4java.impl.generic.core.Stream
-
- All Implemented Interfaces:
IServerResource
,IStream
,IStreamSummary
public class Stream extends StreamSummary implements IStream
Simple default implementation class for the IStream interface.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Stream.ExtraTag
Simple default generic IExtraTag implementation class.static class
Stream.StreamComponentMapping
static class
Stream.StreamIgnoredMapping
Simple default implementation of the IStreamIgnoredMapping interface.static class
Stream.StreamRemappedMapping
Simple default implementation of the IStreamRemappedMapping interface.static class
Stream.StreamViewMapping
Simple default implementation of the IStreamViewMapping interface.-
Nested classes/interfaces inherited from class com.perforce.p4java.impl.generic.core.StreamSummary
StreamSummary.Options
-
Nested classes/interfaces inherited from interface com.perforce.p4java.core.IStream
IStream.IExtraTag
-
Nested classes/interfaces inherited from interface com.perforce.p4java.core.IStreamSummary
IStreamSummary.IOptions, IStreamSummary.ParentView, IStreamSummary.Type
-
-
Field Summary
Fields Modifier and Type Field Description protected ViewMap<IClientViewMapping>
clientView
protected ViewMap<IStreamComponentMapping>
components
static java.lang.String
DEFAULT_DESCRIPTION
Default description for use in newStream method when no explicit description is given.protected java.util.List<IStream.IExtraTag>
extraTags
protected ViewMap<IStreamIgnoredMapping>
ignoredView
protected ViewMap<IStreamRemappedMapping>
remappedView
protected ViewMap<IStreamViewMapping>
streamView
-
Fields inherited from class com.perforce.p4java.impl.generic.core.ServerResource
refreshable, server, updateable
-
-
Constructor Summary
Constructors Constructor Description Stream()
Default constructor.Stream(IStreamSummary summary)
Construct a new Stream from the passed-in summary stream spec.Stream(java.lang.String stream, IStreamSummary.Type type, java.lang.String parent, java.util.Date accessed, java.util.Date updated, java.lang.String name, java.lang.String description, java.lang.String ownerName, IStreamSummary.IOptions options, ViewMap<IStreamViewMapping> streamView, ViewMap<IStreamRemappedMapping> remappedView, ViewMap<IStreamIgnoredMapping> ignoredView)
Construct a new Stream from explicit field values.Stream(java.lang.String stream, IStreamSummary.Type type, java.lang.String parent, java.util.Date accessed, java.util.Date updated, java.lang.String name, java.lang.String description, java.lang.String ownerName, IStreamSummary.IOptions options, ViewMap<IStreamViewMapping> streamView, ViewMap<IStreamRemappedMapping> remappedView, ViewMap<IStreamIgnoredMapping> ignoredView, ViewMap<IClientViewMapping> clientView)
Construct a new Stream from explicit field values.Stream(java.lang.String stream, IStreamSummary.Type type, java.lang.String parent, java.util.Date accessed, java.util.Date updated, java.lang.String name, java.lang.String description, java.lang.String ownerName, IStreamSummary.IOptions options, ViewMap<IStreamViewMapping> streamView, ViewMap<IStreamRemappedMapping> remappedView, ViewMap<IStreamIgnoredMapping> ignoredView, ViewMap<IClientViewMapping> clientView, ViewMap<IStreamComponentMapping> components)
Construct a new Stream from explicit field values.Stream(java.util.Map<java.lang.String,java.lang.Object> map, IServer server)
Construct a Stream from a map passed back from the Perforce server in response to a getStream command.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ViewMap<IClientViewMapping>
getClientView()
Return the automatically generated client view map associated with this stream.ViewMap<IStreamComponentMapping>
getComponents()
java.util.List<IStream.IExtraTag>
getExtraTags()
Return a list of extra tags associated with this stream.ViewMap<IStreamIgnoredMapping>
getIgnoredView()
Return the ignored view map associated with this stream.ViewMap<IStreamRemappedMapping>
getRemappedView()
Return the remapped view map associated with this stream.ViewMap<IStreamViewMapping>
getStreamView()
Return the view map associated with this stream.static Stream
newStream(IOptionsServer server, java.lang.String streamPath, java.lang.String type, java.lang.String parentStreamPath, java.lang.String name, java.lang.String description, java.lang.String options, java.lang.String[] viewPaths, java.lang.String[] remappedPaths, java.lang.String[] ignoredPaths)
Simple factory / convenience method for creating a new local Stream object with defult values.static Stream
newStream(IOptionsServer server, java.lang.String streamPath, java.lang.String type, java.lang.String parentStreamPath, java.lang.String name, java.lang.String description, java.lang.String options, java.lang.String[] viewPaths, java.lang.String[] remappedPaths, java.lang.String[] ignoredPaths, java.lang.String[] clientViewPaths)
Simple factory / convenience method for creating a new local Stream object with defult values.static Stream
newStream(IOptionsServer server, java.lang.String streamPath, java.lang.String type, java.lang.String parentStreamPath, java.lang.String name, java.lang.String description, java.lang.String options, java.lang.String[] viewPaths, java.lang.String[] remappedPaths, java.lang.String[] ignoredPaths, java.lang.String[] clientViewPaths, java.lang.String[] components)
Simple factory / convenience method for creating a new local Stream object with defult values.void
refresh()
This method will refresh by getting the complete stream model.void
setClientView(ViewMap<IClientViewMapping> clientView)
Set the automatically generated client view map associated with this stream spec.void
setComponents(ViewMap<IStreamComponentMapping> components)
void
setExtraTags(java.util.List<IStream.IExtraTag> extraTags)
Set the extra tags associated with this stream.void
setIgnoredView(ViewMap<IStreamIgnoredMapping> ignoredView)
Set the ignored view map associated with this stream spec.void
setRemappedView(ViewMap<IStreamRemappedMapping> remappedView)
Set the remapped view map associated with this stream spec.void
setServer(IOptionsServer server)
Set the server to type of IOptionsServer, overriding the default IServer.void
setStreamView(ViewMap<IStreamViewMapping> streamView)
Set the view map associated with this stream spec.void
update()
Update the Perforce server object associated with the underlying P4Java object, if possible.void
update(boolean force)
Force (if true) update the Perforce server object associated with the underlying P4Java object, if possible.-
Methods inherited from class com.perforce.p4java.impl.generic.core.StreamSummary
getAccessed, getBaseParent, getDescription, getName, getOptions, getOwnerName, getParent, getParentView, getStream, getType, getUpdated, isChangeFlowsFromParent, isChangeFlowsToParent, isFirmerThanParent, isUnloaded, setAccessed, setBaseParent, setChangeFlowsFromParent, setChangeFlowsToParent, setDescription, setFirmerThanParent, setName, setOptions, setOwnerName, setParent, setParentView, setStream, setType, setUpdated
-
Methods inherited from class com.perforce.p4java.impl.generic.core.ServerResource
canRefresh, canUpdate, clearRawFields, complete, getRawField, getRawFields, hasRawField, parseDate, setRawField, setRawFields, setRefreshable, setServer, toDateString, update
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.perforce.p4java.core.IServerResource
canRefresh, canUpdate, clearRawFields, complete, getRawField, getRawFields, hasRawField, setRawField, setRawFields, setServer, update
-
Methods inherited from interface com.perforce.p4java.core.IStreamSummary
getAccessed, getBaseParent, getDescription, getName, getOptions, getOwnerName, getParent, getParentView, getStream, getType, getUpdated, isChangeFlowsFromParent, isChangeFlowsToParent, isFirmerThanParent, isUnloaded, setAccessed, setBaseParent, setChangeFlowsFromParent, setChangeFlowsToParent, setDescription, setFirmerThanParent, setName, setOptions, setOwnerName, setParent, setParentView, setStream, setType, setUpdated
-
-
-
-
Field Detail
-
streamView
protected ViewMap<IStreamViewMapping> streamView
-
remappedView
protected ViewMap<IStreamRemappedMapping> remappedView
-
ignoredView
protected ViewMap<IStreamIgnoredMapping> ignoredView
-
clientView
protected ViewMap<IClientViewMapping> clientView
-
components
protected ViewMap<IStreamComponentMapping> components
-
extraTags
protected java.util.List<IStream.IExtraTag> extraTags
-
DEFAULT_DESCRIPTION
public static final java.lang.String DEFAULT_DESCRIPTION
Default description for use in newStream method when no explicit description is given.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Stream
public Stream()
Default constructor. All fields set to null or false.
-
Stream
public Stream(java.lang.String stream, IStreamSummary.Type type, java.lang.String parent, java.util.Date accessed, java.util.Date updated, java.lang.String name, java.lang.String description, java.lang.String ownerName, IStreamSummary.IOptions options, ViewMap<IStreamViewMapping> streamView, ViewMap<IStreamRemappedMapping> remappedView, ViewMap<IStreamIgnoredMapping> ignoredView)
Construct a new Stream from explicit field values.- Parameters:
stream
- streamtype
- typeparent
- parentaccessed
- accessedupdated
- updatedname
- namedescription
- descriptionownerName
- ownerNameoptions
- optionsstreamView
- streamViewremappedView
- remappedViewignoredView
- ignoredView
-
Stream
public Stream(java.lang.String stream, IStreamSummary.Type type, java.lang.String parent, java.util.Date accessed, java.util.Date updated, java.lang.String name, java.lang.String description, java.lang.String ownerName, IStreamSummary.IOptions options, ViewMap<IStreamViewMapping> streamView, ViewMap<IStreamRemappedMapping> remappedView, ViewMap<IStreamIgnoredMapping> ignoredView, ViewMap<IClientViewMapping> clientView)
Construct a new Stream from explicit field values.- Parameters:
stream
- streamtype
- typeparent
- parentaccessed
- accessedupdated
- updatedname
- namedescription
- descriptionownerName
- ownerNameoptions
- optionsstreamView
- streamViewremappedView
- remappedViewignoredView
- ignoredViewclientView
- clientView
-
Stream
public Stream(java.lang.String stream, IStreamSummary.Type type, java.lang.String parent, java.util.Date accessed, java.util.Date updated, java.lang.String name, java.lang.String description, java.lang.String ownerName, IStreamSummary.IOptions options, ViewMap<IStreamViewMapping> streamView, ViewMap<IStreamRemappedMapping> remappedView, ViewMap<IStreamIgnoredMapping> ignoredView, ViewMap<IClientViewMapping> clientView, ViewMap<IStreamComponentMapping> components)
Construct a new Stream from explicit field values.- Parameters:
stream
- streamtype
- typeparent
- parentaccessed
- accessedupdated
- updatedname
- namedescription
- descriptionownerName
- ownerNameoptions
- optionsstreamView
- streamViewremappedView
- remappedViewignoredView
- ignoredViewclientView
- clientViewcomponents
- components
-
Stream
public Stream(java.util.Map<java.lang.String,java.lang.Object> map, IServer server)
Construct a Stream from a map passed back from the Perforce server in response to a getStream command.- Parameters:
map
- spec mapserver
- server
-
Stream
public Stream(IStreamSummary summary) throws ConnectionException, RequestException, AccessException
Construct a new Stream from the passed-in summary stream spec. If the summary is null, this is equivalent to calling the default Stream constructor; otherwise after name initialization a refresh() is done on the new (empty) Stream.- Parameters:
summary
- summary class- Throws:
ConnectionException
- if the Perforce server is unreachable or is not connected.RequestException
- if the Perforce server encounters an error during its processing of the requestAccessException
- if the Perforce server denies access to the caller
-
-
Method Detail
-
newStream
public static Stream newStream(IOptionsServer server, java.lang.String streamPath, java.lang.String type, java.lang.String parentStreamPath, java.lang.String name, java.lang.String description, java.lang.String options, java.lang.String[] viewPaths, java.lang.String[] remappedPaths, java.lang.String[] ignoredPaths)
Simple factory / convenience method for creating a new local Stream object with defult values.- Parameters:
server
- serverstreamPath
- stream pathtype
- typeparentStreamPath
- parent streamname
- namedescription
- descriptionoptions
- optionsviewPaths
- view pathsremappedPaths
- remapped pathsignoredPaths
- ignored paths- Returns:
- stream object
-
newStream
public static Stream newStream(IOptionsServer server, java.lang.String streamPath, java.lang.String type, java.lang.String parentStreamPath, java.lang.String name, java.lang.String description, java.lang.String options, java.lang.String[] viewPaths, java.lang.String[] remappedPaths, java.lang.String[] ignoredPaths, java.lang.String[] clientViewPaths)
Simple factory / convenience method for creating a new local Stream object with defult values.- Parameters:
server
- non-null server to be associated with the new stream spec.streamPath
- non-null stream's path in a stream depot, of the form //depotname/streamname.type
- non-null stream type of 'mainline', 'development', or 'release'.parentStreamPath
- parent of this stream. Can be null if the stream type is 'mainline', otherwise must be set to an existing stream.name
- an alternate name of the stream, for use in display outputs. Defaults to the 'streamname' portion of the stream path. Can be changed.description
- if not null, used as the new stream spec's description field; if null, uses the Stream.DEFAULT_DESCRIPTION field.options
- flags to configure stream behavior: allsubmit/ownersubmit [un]locked [no]toparent [no]fromparent mergedown/mergeany.viewPaths
- one or more lines that define file paths in the stream view. Each line is of the form: path_type view_path depot_pathremappedPaths
- optional; one or more lines that define how stream view paths are to be remapped in client views. Each line is of the form: view_path_1 view_path_2ignoredPaths
- optional; a list of file or directory names to be ignored in client views. For example: /tmp # ignores files named 'tmp' /tmp/... # ignores dirs named 'tmp' .tmp # ignores file names ending in '.tmp'clientViewPaths
- automatically generated; maps files in the depot to files in your client workspace. For example: //p4java_stream/dev/... ... //p4java_stream/dev/readonly/sync/p4cmd/%%1 readonly/sync/p4cmd/%%1 -//p4java_stream/.../temp/... .../temp/... -//p4java_stream/....class ....class- Returns:
- new local Stream object.
-
newStream
public static Stream newStream(IOptionsServer server, java.lang.String streamPath, java.lang.String type, java.lang.String parentStreamPath, java.lang.String name, java.lang.String description, java.lang.String options, java.lang.String[] viewPaths, java.lang.String[] remappedPaths, java.lang.String[] ignoredPaths, java.lang.String[] clientViewPaths, java.lang.String[] components)
Simple factory / convenience method for creating a new local Stream object with defult values.- Parameters:
server
- non-null server to be associated with the new stream spec.streamPath
- non-null stream's path in a stream depot, of the form //depotname/streamname.type
- non-null stream type of 'mainline', 'development', or 'release'.parentStreamPath
- parent of this stream. Can be null if the stream type is 'mainline', otherwise must be set to an existing stream.name
- an alternate name of the stream, for use in display outputs. Defaults to the 'streamname' portion of the stream path. Can be changed.description
- if not null, used as the new stream spec's description field; if null, uses the Stream.DEFAULT_DESCRIPTION field.options
- flags to configure stream behavior: allsubmit/ownersubmit [un]locked [no]toparent [no]fromparent mergedown/mergeany.viewPaths
- one or more lines that define file paths in the stream view. Each line is of the form: path_type view_path depot_pathremappedPaths
- optional; one or more lines that define how stream view paths are to be remapped in client views. Each line is of the form: view_path_1 view_path_2ignoredPaths
- optional; a list of file or directory names to be ignored in client views. For example: /tmp # ignores files named 'tmp' /tmp/... # ignores dirs named 'tmp' .tmp # ignores file names ending in '.tmp'clientViewPaths
- automatically generated; maps files in the depot to files in your client workspace. For example: //p4java_stream/dev/... ... //p4java_stream/dev/readonly/sync/p4cmd/%%1 readonly/sync/p4cmd/%%1 -//p4java_stream/.../temp/... .../temp/... -//p4java_stream/....class ....classcomponents
- Add stream components. Syntax: component_type component_folder component_stream[@[change | automatic_label]] eg: readonly dirB //streams/B- Returns:
- new local Stream object.
-
refresh
public void refresh() throws ConnectionException, RequestException, AccessException
This method will refresh by getting the complete stream model. If this refresh is successful then this stream will be marked as complete.- Specified by:
refresh
in interfaceIServerResource
- Overrides:
refresh
in classServerResource
- Throws:
ConnectionException
- if the Perforce server is unreachable or is not connected.RequestException
- if the Perforce server encounters an error during its processing of the requestAccessException
- if the Perforce server denies access to the caller- See Also:
ServerResource.refresh()
-
update
public void update() throws ConnectionException, RequestException, AccessException
Description copied from interface:IServerResource
Update the Perforce server object associated with the underlying P4Java object, if possible. The semantics of server updates are generally object-specific and will be spelled out for each participating object.The results of calling this method on objects whose canUpdate method returns false are undefined (but will generally result in a UnimplementedError being thrown).
- Specified by:
update
in interfaceIServerResource
- Overrides:
update
in classServerResource
- Throws:
ConnectionException
- if the Perforce server is unreachable or is not connected.RequestException
- if the Perforce server encounters an error during its processing of the requestAccessException
- if the Perforce server denies access to the caller- See Also:
ServerResource.update()
-
update
public void update(boolean force) throws ConnectionException, RequestException, AccessException
Description copied from interface:IServerResource
Force (if true) update the Perforce server object associated with the underlying P4Java object, if possible. The semantics of server updates are generally object-specific and will be spelled out for each participating object.Note, in order to force the change it may require super user / admin privileges to work properly.
The results of calling this method on objects whose canUpdate method returns false are undefined (but will generally result in a UnimplementedError being thrown).
- Specified by:
update
in interfaceIServerResource
- Overrides:
update
in classServerResource
- Parameters:
force
- if true, force the update of the object on the server.- Throws:
ConnectionException
- if the Perforce server is unreachable or is not connected.RequestException
- if the Perforce server encounters an error during its processing of the requestAccessException
- if the Perforce server denies access to the caller- See Also:
ServerResource.update(boolean)
-
getStreamView
public ViewMap<IStreamViewMapping> getStreamView()
Description copied from interface:IStream
Return the view map associated with this stream. One or more mappings that define file paths in the stream view. Each line is of the form: path_type view_path [depot_path]- Specified by:
getStreamView
in interfaceIStream
- Returns:
- non-null list of IStreamViewMapping mappings for this stream.
- See Also:
IStream.getStreamView()
-
setStreamView
public void setStreamView(ViewMap<IStreamViewMapping> streamView)
Description copied from interface:IStream
Set the view map associated with this stream spec. This will not change the associated stream spec on the Perforce server unless you arrange for the update to server.- Specified by:
setStreamView
in interfaceIStream
- Parameters:
streamView
- new view mappings for the stream.- See Also:
IStream.setStreamView(com.perforce.p4java.core.ViewMap)
-
setServer
public void setServer(IOptionsServer server)
Description copied from interface:IStream
Set the server to type of IOptionsServer, overriding the default IServer.- Specified by:
setServer
in interfaceIStream
- Parameters:
server
- server- See Also:
IServerResource.setServer(com.perforce.p4java.server.IServer)
-
getRemappedView
public ViewMap<IStreamRemappedMapping> getRemappedView()
Description copied from interface:IStream
Return the remapped view map associated with this stream. Optional; one or more mappings that define how stream view paths are to be remapped in client views. Each line is of the form: view_path_1 view_path_2- Specified by:
getRemappedView
in interfaceIStream
- Returns:
- possibly-null (optional) list of IStreamRemappedMapping mappings for this stream.
- See Also:
IStream.getRemappedView()
-
setRemappedView
public void setRemappedView(ViewMap<IStreamRemappedMapping> remappedView)
Description copied from interface:IStream
Set the remapped view map associated with this stream spec. This will not change the associated stream spec on the Perforce server unless you arrange for the update to server.- Specified by:
setRemappedView
in interfaceIStream
- Parameters:
remappedView
- new remapped view mappings for the stream.- See Also:
IStream.setStreamView(com.perforce.p4java.core.ViewMap)
-
getIgnoredView
public ViewMap<IStreamIgnoredMapping> getIgnoredView()
Description copied from interface:IStream
Return the ignored view map associated with this stream. Optional; a list of file or directory names to be ignored in client views. mappings in the "Ignored" field may appear in any order. Ignored names are inherited by child stream client views.- Specified by:
getIgnoredView
in interfaceIStream
- Returns:
- possibly-null (optional) list of IStreamIgnoredMapping mappings to be ignored for this stream.
- See Also:
IStream.getIgnoredView()
-
setIgnoredView
public void setIgnoredView(ViewMap<IStreamIgnoredMapping> ignoredView)
Description copied from interface:IStream
Set the ignored view map associated with this stream spec. This will not change the associated stream spec on the Perforce server unless you arrange for the update to server.- Specified by:
setIgnoredView
in interfaceIStream
- Parameters:
ignoredView
- ignore view mapping- See Also:
IStream.setIgnoredView(com.perforce.p4java.core.ViewMap)
-
getClientView
public ViewMap<IClientViewMapping> getClientView()
Description copied from interface:IStream
Return the automatically generated client view map associated with this stream. Maps files in the depot to files in your client workspace.- Specified by:
getClientView
in interfaceIStream
- Returns:
- possibly-null list of automatically generated IClientViewMapping mappings associated with this stream.
- See Also:
IStream.getClientView()
-
setClientView
public void setClientView(ViewMap<IClientViewMapping> clientView)
Description copied from interface:IStream
Set the automatically generated client view map associated with this stream spec. This will not change the associated stream spec on the Perforce server unless you arrange for the update to server.- Specified by:
setClientView
in interfaceIStream
- Parameters:
clientView
- client view- See Also:
IStream.setClientView(com.perforce.p4java.core.ViewMap)
-
getExtraTags
public java.util.List<IStream.IExtraTag> getExtraTags()
Description copied from interface:IStream
Return a list of extra tags associated with this stream.- Specified by:
getExtraTags
in interfaceIStream
- Returns:
- possibly-null list of extra tags associated with this stream.
- See Also:
IStream.getExtraTags()
-
setExtraTags
public void setExtraTags(java.util.List<IStream.IExtraTag> extraTags)
Description copied from interface:IStream
Set the extra tags associated with this stream. This will not change the associated stream spec on the Perforce server unless you arrange for the update to server.- Specified by:
setExtraTags
in interfaceIStream
- Parameters:
extraTags
- extra tags- See Also:
IStream.setExtraTags(java.util.List)
-
getComponents
public ViewMap<IStreamComponentMapping> getComponents()
- Specified by:
getComponents
in interfaceIStream
-
setComponents
public void setComponents(ViewMap<IStreamComponentMapping> components)
- Specified by:
setComponents
in interfaceIStream
- Parameters:
components
- A stream Components
-
-