final PropertyKey.Builder keyBuilder = accessor.keyBuilder();
for (ResourceId resourceId : resourceMap.keySet()) {
ResourceConfig resourceConfig = resourceMap.get(resourceId);
ProvisionerConfig provisionerConfig = resourceConfig.getProvisionerConfig();
if (provisionerConfig != null) {
Provisioner provisioner;
provisioner = _provisionerMap.get(resourceId);
// instantiate and cache a provisioner if there isn't one already cached
if (provisioner == null) {
ProvisionerRef provisionerRef = provisionerConfig.getProvisionerRef();
if (provisionerRef != null) {
provisioner = provisionerRef.getProvisioner();
}
if (provisioner != null) {
provisioner.init(helixManager, resourceConfig);
_containerProviderMap.put(resourceId, provisioner.getContainerProvider());
_targetProviderMap.put(resourceId, provisioner.getTargetProvider());
_provisionerMap.put(resourceId, provisioner);
} else {
LOG.error("Resource " + resourceId + " does not have a valid provisioner class!");
break;
}