EventHubManager.java
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.microsoft.azure.spring.cloud.context.core.impl;
import com.microsoft.azure.management.Azure;
import com.microsoft.azure.management.eventhub.EventHub;
import com.microsoft.azure.management.eventhub.EventHubNamespace;
import com.microsoft.azure.spring.cloud.context.core.config.AzureProperties;
import com.microsoft.azure.spring.cloud.context.core.util.Tuple;
public class EventHubManager extends AzureManager<EventHub, Tuple<EventHubNamespace, String>> {
public EventHubManager(Azure azure, AzureProperties azureProperties) {
super(azure, azureProperties);
}
@Override
String getResourceName(Tuple<EventHubNamespace, String> key) {
return key.getSecond();
}
@Override
String getResourceType() {
return EventHub.class.getSimpleName();
}
@Override
public EventHub internalGet(Tuple<EventHubNamespace, String> namespaceAndName) {
return azure.eventHubs().getByName(azureProperties.getResourceGroup(), namespaceAndName.getFirst().name(),
namespaceAndName.getSecond());
}
@Override
public EventHub internalCreate(Tuple<EventHubNamespace, String> namespaceAndName) {
return azure.eventHubs().define(namespaceAndName.getSecond()).withExistingNamespace(namespaceAndName.getFirst())
.create();
}
}