There are other providers that face this issue, and they encode the region in the node ID. You can have a look at how the [OpenStack Nova](https://github.com/jclouds/jclouds/blob/master/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceAdapter.java#L221-L233) provider returns the nodes. It uses a `ServerInRegion` internal entity, just to transport all the region information to the [node transformation function](https://github.com/jclouds/jclouds/blob/master/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/compute/functions/ServerInRegionToNodeMetadata.java#L102-L103). So nodes IDs in nova are something like "regionA/i-0001". Then the adapter takes this convention into account elsewhere, such as when [getting a node by id](https://github.com/jclouds/jclouds/blob/master/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceAdapter.java#L253-L258). The use of that `ServerInRegion` cl ass is a clean way to encapsulate all this ID encoding behavior across the entire the portable abstraction layer.
--- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/jclouds/jclouds-labs/pull/268#issuecomment-223555090
