/* * Copyright (c) 2015 EMC Corporation * All Rights Reserved */ package com.emc.storageos.computecontroller.impl; import com.emc.cloud.ucsm.service.UCSMService; import com.emc.storageos.computecontroller.impl.ucs.UcsDiscoveryWorker; import com.emc.storageos.db.client.DbClient; import com.emc.storageos.db.client.model.DiscoveredDataObject; import com.emc.storageos.plugins.AccessProfile; public class ComputeDiscoveryWorker { private UCSMService ucsmService; private DbClient dbClient; public ComputeDiscoveryWorker(UCSMService _ucsmService, DbClient _dbClient) { ucsmService = _ucsmService; dbClient = _dbClient; } /* * Determines the device and call the appropriate discovery worker * based on the access provider. */ public void discoverComputeSystem(AccessProfile accessProfile) throws Exception { // Look for the system type and kick off discovery. if (accessProfile.getSystemType().equals(DiscoveredDataObject.Type.ucs.name())) { UcsDiscoveryWorker ucsDiscoveryWorker = new UcsDiscoveryWorker(ucsmService, dbClient); ucsDiscoveryWorker.discoverComputeSystem(accessProfile.getSystemId()); } } }