3.1.1.1.50.2.1 GetMultivaluedPropertiesForBlock

The GetMultivaluedPropertiesForBlock procedure retrieves all the multivalued properties that are associated to specified IPBlock.

The following are the input parameters to this procedure:

Param_blockId: This is a signed 64-bit integer that represents the RecordId of the IPBlock for which the multivalued properties need to be retrieved.

Param_addressfamily: This is of type AddressFamily and it can be either InterNetwork or InterNetworkV6. The value InterNetwork is used to specify the processing to be done on the IPv4-specific simple tables for any compound table involved during the processing. The value InterNetworkV6 is used to specify the processing to be done on IPv6-specific simple tables for any compound table involved during the processing.

The following is the output parameter from this procedure.

Result_multiValuedProperties: This is a collection <Tuple<long PropertyId, byte[] PropertyValue>> with each tuple instance representing a MultiValuePropertyDetail (as specified in section 3.1.1.1.50.1) associated with the provided Param_blockId parameter.

The following are the processing steps involved:

  1. Look up all the rows in the appropriate simple table of ADM_IPBlockMultivaluedPropertiesTable corresponding to Param_addressFamily, with a BlockId value of Param_blockId.

  2. If no such rows are found, initialize Result_multiValuedProperties as NULL and return from the procedure.

  3. Initialize Result_multiValuedProperties as a collection <tuple<long PropertyId, byte[] PropertyValue>>.

  4. Initialize an instance of tuple<long PropertyId, byte[] PropertyValue>and assign PropertyId and PropertyValue. Add this instance to the Result_multiValuedProperties collection.

  5. Return Result_multiValuedProperties as the output of the procedure.