3.3.4.40 EnumerateIpamIPBlock
The EnumerateIpamIPBlock operation is used to enumerate custom fields from the IPAM data store.
-
<wsdl:operation name="EnumerateIpamIPBlock"> <wsdl:input wsaw:Action="http://Microsoft.Windows.Ipam/IIpamServer/EnumerateIpamIPBlock" message="ipam:IIpamServer_EnumerateIpamIPBlock_InputMessage" /> <wsdl:output wsaw:Action="http://Microsoft.Windows.Ipam/IIpamServer/EnumerateIpamIPBlockResponse" message="ipam:IIpamServer_EnumerateIpamIPBlock_OutputMessage" /> </wsdl:operation>
Upon receiving the IIpamServer_EnumerateIpamIPBlock_InputMessage request message, the server performs the following processing steps. Upon successful completion of these steps, the server MUST respond with the IIpamServer_EnumerateIpamIPBlock_OutputMessage message. In the event of a failure, an appropriate SOAP fault MUST be sent to the client as specified in section 2.2.2.1:
If EnumerateIpamIPBlock.parametersInput is NULL or EnumerateIpamIPBlock.parametersInput is not of type IPBlockRootEnumerationParameters or IPBlockChildBlockEnumerationParameters or IPBlockGetAllBlocksEnumerationParameters, an appropriate SOAP fault MUST be raised.
If EnumerateIpamIPBlock.parametersInput is of type IPBlockRootEnumerationParameters:
If EnumerateIpamIPBlock.parametersInput.AddressFamily is not InterNetwork or InterNetworkV6, an appropriate SOAP fault MUST be raised.
Get all the rows from ADM_IPBlocksTable where ParentBlockId is NULL
For each of the previous rows, call the GetIPBlockFromTable procedure of ADM_IPBlocksTable. Add the result to a temporary data collection enumeratedBlocks.
Assign enumeratedBlocks to EnumerateIpamIPBlockResponse.EnumerateIpamIPBlockResult.
If EnumerateIpamIPBlock.parametersInput is of type IPBlockChildBlockEnumerationParameters:
If EnumerateIpamIPBlock.parametersInput.AddressFamily is not InterNetwork or InterNetworkV6, an appropriate SOAP fault MUST be raised.
Get all the rows from ADM_IPBlocksTable where ParentBlockId is EnumerateIpamIPBlock.parametersInput.ParentBlockRecordId.
For each of the previous rows, call the GetIPBlockFromTable procedure from ADM_IPBlocksTable. Add the result to a temporary data collection enumeratedBlocks.
Assign enumeratedBBlocks to EnumerateIpamIPBlockResponse.EnumerateIpamIPBlockResult.
If EnumerateIpamIPBlock.parametersInput is of type IPBlockGetAllBlocksEnumerationParameters:
If EnumerateIpamIPBlock.parametersInput.AddressFamily is not InterNetwork or InterNetworkV6, an appropriate SOAP fault MUST be raised.
Get all the rows from ADM_IPBlocksTable.
For each of the previous rows, call the GetIPBlockFromTable procedure of ADM_IPBlocksTable. Add the result to a temporary data collection enumeratedBlocks.
Assign enumeratedBlocks to EnumerateIpamIPBlockResponse.EnumerateIpamIPBlockResult.