Interface ISnapshotParticipant

    • Method Detail

      • configure

        void configure​(org.eclipse.core.resources.IProject project,
                       ISnapshotConfigurator configurator)
        Requests the participant to configure snapshot. Called some time before snapshot creation and restoration.
        Parameters:
        project - the project for which snapshot is going to be created, cannot be null
        configurator - the configurator to configure snapshot, cannot be null
      • contributeMetadata

        void contributeMetadata​(org.eclipse.core.resources.IProject project,
                                String entry,
                                OutputStream output)
                         throws IOException
        Requests the participant to contribute metadata for the previously configured metadata entry.

        This method is called during snapshot creation once for each metadata entry, which was added by ISnapshotConfigurator.addMetadataEntry(java.lang.String). The order of entries supplied to this method is not specified.

        Participants must not call output.close().

        Parameters:
        project - the project for which snapshot is being created, cannot be null
        entry - the metadata entry name, cannot be null
        output - the output stream to write metadata, cannot be null
        Throws:
        IOException
      • restoreMetadata

        void restoreMetadata​(org.eclipse.core.resources.IProject project,
                             String entry,
                             InputStream input)
                      throws IOException
        Requests the participant to read metadata from snapshot.

        This method is called during snapshot restoration once for each metadata entry, which was added to the snapshot by the same participant on creation. The order of entries supplied to this method is not specified.

        Participants must not call input.close().

        Parameters:
        project - the project for which snapshot is being restored, cannot be null
        entry - the metadata entry name, cannot be null
        input - the input stream to read metadata, cannot be null
        Throws:
        IOException
      • getFormatVersion

        int getFormatVersion()
        Gets format version of the snapshot participant. Whenever the format version of a participant does not match the format version stored in a snapshot for this participant, the snapshot is considered invalid and cannot be restored.

        Snapshot participants are encouraged to smoothly migrate their data. The format version must be increased only if migration is impossible or too heavy.

        Returns:
        the format version of the participant