code: private static String resolveIdentity(ResourceAddress address, Subject subject) {
          IdentityResolver resolver = address.getOption(IDENTITY_RESOLVER);
          ResourceAddress transport = address.getTransport();
          if (resolver != null) {
              return resolver.resolve(subject);
          }
          if (transport != null) {
              return resolveIdentity(transport, subject);
          }
          return null;
      }
docs: Method attempting to perform identity resolution based on the provided subject parameter and transport
  It is attempted to perform the resolution from the highest to the lowest layer, recursively.
  @param address
  @param subject
  @return