The IServerResource interface
P4Java represents Helix Server objects (such as changelists, branch mappings, job specs, and so
on) to the end user through associated interfaces (such as
IChangelist
, IBranchSpec
, and so on) onto
objects within P4Java that mirror or proxy the server-side originals.
This means that over time, the P4Java-internal instances of the objects
may get out of date with the server originals, or the server originals
may need to be updated with corresponding changes made to the P4Java versions.
P4Java’s IServerResource
interface is designed to support
such proxying and to allow refreshes from the server or updates to the
server as necessary. Virtually all useful P4Java objects or interfaces
that proxy or represent Helix Server-side objects extend the IServerResource
interface,
and unless otherwise noted in the individual Javadoc comments, the
interface methods can be used to update server- and client-side versions
accordingly.