code: public PagedList<PublicIPAddressInner> listVirtualMachineScaleSetVMPublicIPAddresses(final String resourceGroupName, final String virtualMachineScaleSetName, final String virtualmachineIndex, final String networkInterfaceName, final String ipConfigurationName) {
          ServiceResponse<Page<PublicIPAddressInner>> response = listVirtualMachineScaleSetVMPublicIPAddressesSinglePageAsync(resourceGroupName, virtualMachineScaleSetName, virtualmachineIndex, networkInterfaceName, ipConfigurationName).toBlocking().single();
          return new PagedList<PublicIPAddressInner>(response.body()) {
              @Override
              public Page<PublicIPAddressInner> nextPage(String nextPageLink) {
                  return listVirtualMachineScaleSetVMPublicIPAddressesNextSinglePageAsync(nextPageLink).toBlocking().single().body();
              }
          };
      }
docs: Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.
  
  @param resourceGroupName The name of the resource group.
  @param virtualMachineScaleSetName The name of the virtual machine scale set.
  @param virtualmachineIndex The virtual machine index.
  @param networkInterfaceName The network interface name.
  @param ipConfigurationName The IP configuration name.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @throws CloudException thrown if the request is rejected by server
  @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
  @return the PagedList&lt;PublicIPAddressInner&gt; object if successful.