Partager via


CReplicationProject.EnumReplications Method

Retrieves the replication instances, that is, the deployments that are currently running on a server, for the Commerce Server Staging (CSS) project.

object EnumReplications(int state, ref object iterator)

Parameters

  • state
    Queries for replications of a given state. The following table shows the possible queries and their values.

    State

    Value

    Description

    REPL_STATE_EMPTY

    0

    Returns all replications.

    REPL_STATE_STARTING

    1

    Returns only starting replications.

    REPL_STATE_RUNNING

    2

    Returns only running replications.

    REPL_STATE_SENT

    3

    Returns replications that were sent.

    REPL_STATE_ABORTED

    4

    Returns replications that were aborted with an error.

    REPL_STATE_CANCELED

    5

    Returns replications that were canceled.

    REPL_STATE_RECEIVING

    6

    Returns replications that are in the process of being received at the destination.

    REPL_STATE_PENDING

    7

    Returns replications that are pending.

    REPL_STATE_PARTIAL

    8

    Returns replications that were partially completed.

    REPL_STATE_COMPLETE

    9

    Returns only complete replications.

  • iterator
    Used by the CSS service to enumerate the list of replications. This value should be initialized to 0 (zero) and should not be modified.

Return Value

A ReplicationInstance object for this iteration.

Remarks

You must have CSS administrator or operator rights to call this method.

This method sets the value of e.ErrorCode to -2147422485 (“No more items.”) to indicate the end of the enumeration.

The CReplicationProject.EnumReplications method corresponds to the COM method named ReplicationProject.EnumReplications.

Example

The following example lists when the replication was started, the number of files that were sent, the state of the replication, and the status of the replication for all replication instances for the project named Project1.

CReplicationServer replicationServer = new CReplicationServer();
replicationServer.Initialize("");
CReplicationProject replicationProject;
replicationProject = (CReplicationProject)replicationServer.OpenProject("Project1", CSS_PROJECT_CREATION.OPEN_EXISTING_PROJECT);
int iterator = 0;
object i = iterator as object;
CReplicationInstance replicationInstance;
int id = 0;
while (true)
{
    try
    {
        replicationInstance = (CReplicationInstance)replicationProject.EnumReplications(0, ref i);
        // Update Instance properties
        replicationInstance.Query();
        // Display Instance properties
        Console.WriteLine("Replication {0} properties:", replicationInstance.ID);
        Console.WriteLine("Started: {0}", replicationInstance.StartTime);
        Console.WriteLine("Ended: {0}", replicationInstance.EndTime);
        Console.WriteLine("Files sent: {0}", replicationInstance.FilesSent);
        Console.WriteLine("State: {0}", replicationInstance.State);
        Console.WriteLine("Status: {0}", replicationInstance.Status);
    }
    catch (System.Runtime.InteropServices.COMException e)
    {
        // Exit if "No more items" error
        if (e.ErrorCode == -2147422485)
            break;
        else
            throw e;
    }
}

See Also

Other Resources

Projects

How to Start and Stop Project Replication

How to Retrieve Project Information

CReplicationProject.Enum Method

CReplicationInstance.State Property

CReplicationInstance.Status Property

CReplicationInstance Class

CReplicationProject Class