Search in sources :

Example 6 with ComputeEnumerateAdapterRequest

use of com.vmware.photon.controller.model.adapters.util.ComputeEnumerateAdapterRequest in project photon-model by vmware.

the class AzureEnumerationAdapterService method triggerEnumerationAdapter.

/**
 * Trigger specified enumeration adapter
 */
public void triggerEnumerationAdapter(EnumerationContext context, String adapterSelfLink, AzureEnumerationStages next) {
    Operation.CompletionHandler completionHandler = (o, e) -> {
        if (e != null) {
            final String msg = String.format("Error executing Azure enumeration adapter '%s' for '%s': %s", adapterSelfLink, context.request.endpointLink, Utils.toString(e));
            context.error = new IllegalStateException(msg, e);
            context.taskManager.patchTaskToFailure(context.error);
            logSevere(context.error);
            return;
        }
        logInfo(() -> String.format("Completed Azure enumeration adapter %s for %s", adapterSelfLink, context.request.endpointLink));
        context.stage = next;
        handleEnumerationRequest(context);
    };
    ComputeEnumerateAdapterRequest azureEnumerationRequest = new ComputeEnumerateAdapterRequest(context.request, context.endpointAuth, context.parent);
    Operation.createPatch(this, adapterSelfLink).setBody(azureEnumerationRequest).setCompletion(completionHandler).sendWith(this);
    logInfo(() -> String.format("Triggered Azure enumeration adapter %s for %s", adapterSelfLink, context.request.endpointLink));
}
Also used : AdapterUtils(com.vmware.photon.controller.model.adapters.util.AdapterUtils) Utils(com.vmware.xenon.common.Utils) ComputeEnumerateResourceRequest(com.vmware.photon.controller.model.adapterapi.ComputeEnumerateResourceRequest) StatelessService(com.vmware.xenon.common.StatelessService) Operation(com.vmware.xenon.common.Operation) TRIGGER_STORAGE_ENUMERATION(com.vmware.photon.controller.model.adapters.azure.enumeration.AzureEnumerationAdapterService.AzureEnumerationStages.TRIGGER_STORAGE_ENUMERATION) ComputeEnumerateAdapterRequest(com.vmware.photon.controller.model.adapters.util.ComputeEnumerateAdapterRequest) AzureUriPaths(com.vmware.photon.controller.model.adapters.azure.AzureUriPaths) BaseAdapterStage(com.vmware.photon.controller.model.adapters.util.BaseAdapterContext.BaseAdapterStage) BaseAdapterContext(com.vmware.photon.controller.model.adapters.util.BaseAdapterContext) TRIGGER_RESOURCE_GROUP_ENUMERATION(com.vmware.photon.controller.model.adapters.azure.enumeration.AzureEnumerationAdapterService.AzureEnumerationStages.TRIGGER_RESOURCE_GROUP_ENUMERATION) ComputeEnumerateAdapterRequest(com.vmware.photon.controller.model.adapters.util.ComputeEnumerateAdapterRequest) Operation(com.vmware.xenon.common.Operation)

Aggregations

ComputeEnumerateAdapterRequest (com.vmware.photon.controller.model.adapters.util.ComputeEnumerateAdapterRequest)6 ComputeEnumerateResourceRequest (com.vmware.photon.controller.model.adapterapi.ComputeEnumerateResourceRequest)5 EnumerationAction (com.vmware.photon.controller.model.adapterapi.EnumerationAction)3 AdapterUtils (com.vmware.photon.controller.model.adapters.util.AdapterUtils)3 Operation (com.vmware.xenon.common.Operation)3 StatelessService (com.vmware.xenon.common.StatelessService)3 UriUtils (com.vmware.xenon.common.UriUtils)3 Utils (com.vmware.xenon.common.Utils)3 Map (java.util.Map)3 DataDisk (com.microsoft.azure.management.compute.DataDisk)2 Disk (com.microsoft.azure.management.compute.Disk)2 KnownLinuxVirtualMachineImage (com.microsoft.azure.management.compute.KnownLinuxVirtualMachineImage)2 VirtualMachine (com.microsoft.azure.management.compute.VirtualMachine)2 Region (com.microsoft.azure.management.resources.fluentcore.arm.Region)2 SdkContext (com.microsoft.azure.management.resources.fluentcore.utils.SdkContext)2 AzureBaseTest (com.vmware.photon.controller.model.adapters.azure.base.AzureBaseTest)2 AzureConstants (com.vmware.photon.controller.model.adapters.azure.constants.AzureConstants)2 AzureTestUtil (com.vmware.photon.controller.model.adapters.azure.instance.AzureTestUtil)2 TagsUtil (com.vmware.photon.controller.model.adapters.util.TagsUtil)2 PhotonModelConstants (com.vmware.photon.controller.model.constants.PhotonModelConstants)2