3.19.4.4.1.7 AddScopesToSuperscopeDelegate
The AddScopesToSuperscopeDelegate processing is done when the IpamOperationWithProgressParameter.OperationId is AdminOperationId.AddScopesToSuperscope. The IpamOperationWithProgressParameter instance in this case MUST be of type AddScopesToSuperscopeParameters.
This operation is used to add a collection of scopes to a new or existing super scope. The following are the steps involved. In these steps, any time a fault is generated, the SetOverallStatus SHOULD be called with the fault details:
If IpamOperationWithProgressParameter is NULL or not of type AddScopesToSuperscopeParameters, generate an appropriate SOAP fault (as specified in section 2.2.2.1). Project IpamOperationWithProgressParameter in a local variable as AddScopesToSuperscopeParameters.
If AddScopesToSuperscopeParameters.ScopeIds is NULL, generate an appropriate SOAP fault (as specified in section 2.2.2.1).
Check if the SuperScope already exists, by looking for a row in ADM_DhcpSuperscopeTable that has the same RecordId as AddScopesToSuperscopeParameters.SuperScope.RecordId.
If the Superscope does not already exist, create it by adding a row to ADM_DhcpSuperscopeTable and initializing the row with the contents of AddScopesToSuperscopeParameters.SuperScope.
Call the procedure AddScopesToSuperScope of the ADM_DHCPScopesTable, passing AddScopesToSuperscopeParameters.SuperScope as Param_SuperScope and AddScopesToSuperscopeParameters.ScopeIds as Param_scopes.
For each scope added to the superscope, if it is in a failover relationship, this function is called for the partner scope. This will add the partner scope to a superscope with the same configuration as AddScopesToSuperscopeParameters.SuperScope, on the partner server.
If the procedure returns any error, generate an appropriate SOAP fault (as specified in section 2.2.2.1).
Call SetOverallStatus with Success and 100 percent completion.