use of org.openstack4j.model.identity.v3.Domain in project camel by apache.
the class DomainProducer method doGet.
private void doGet(Exchange exchange) {
final Message msg = exchange.getIn();
final String id = msg.getHeader(OpenstackConstants.ID, msg.getHeader(KeystoneConstants.DOMAIN_ID, String.class), String.class);
ObjectHelper.notEmpty(id, "Domain ID");
final Domain out = osV3Client.identity().domains().get(id);
exchange.getIn().setBody(out);
}
use of org.openstack4j.model.identity.v3.Domain in project camel by apache.
the class DomainProducerTest method updateTest.
@Test
public void updateTest() throws Exception {
final String id = "myID";
msg.setHeader(OpenstackConstants.OPERATION, OpenstackConstants.UPDATE);
final String newName = "newName";
when(testOSdomain.getId()).thenReturn(id);
when(testOSdomain.getName()).thenReturn(newName);
when(testOSdomain.getDescription()).thenReturn("desc");
when(domainService.update(any(Domain.class))).thenReturn(testOSdomain);
msg.setBody(testOSdomain);
producer.process(exchange);
ArgumentCaptor<Domain> captor = ArgumentCaptor.forClass(Domain.class);
verify(domainService).update(captor.capture());
assertEqualsDomain(testOSdomain, captor.getValue());
assertNotNull(captor.getValue().getId());
assertEquals(newName, msg.getBody(Domain.class).getName());
}
use of org.openstack4j.model.identity.v3.Domain in project weblogic-kubernetes-operator by oracle.
the class DomainStatusUpdater method doDomainUpdate.
private static NextAction doDomainUpdate(Domain dom, DomainPresenceInfo info, Packet packet, Step conflictStep, Step next) {
V1ObjectMeta meta = dom.getMetadata();
NextAction na = new NextAction();
CallBuilderFactory factory = ContainerResolver.getInstance().getContainer().getSPI(CallBuilderFactory.class);
na.invoke(factory.create().replaceDomainAsync(meta.getName(), meta.getNamespace(), dom, new ResponseStep<Domain>(next) {
@Override
public NextAction onFailure(Packet packet, ApiException e, int statusCode, Map<String, List<String>> responseHeaders) {
if (statusCode == CallBuilder.NOT_FOUND) {
// Just ignore update
return doNext(packet);
}
return super.onFailure(conflictStep, packet, e, statusCode, responseHeaders);
}
@Override
public NextAction onSuccess(Packet packet, Domain result, int statusCode, Map<String, List<String>> responseHeaders) {
info.setDomain(result);
return doNext(packet);
}
}), packet);
return na;
}
use of org.openstack4j.model.identity.v3.Domain in project weblogic-kubernetes-operator by oracle.
the class Main method dispatchDomainWatch.
/**
* Dispatch the Domain event to the appropriate handler.
*
* @param item An item received from a Watch response.
* @param principal The name of the principal that will be used in this watch.
*/
private static void dispatchDomainWatch(Watch.Response<Domain> item) {
Domain d;
String domainUID;
switch(item.type) {
case "ADDED":
case "MODIFIED":
d = item.object;
domainUID = d.getSpec().getDomainUID();
LOGGER.info(MessageKeys.WATCH_DOMAIN, domainUID);
doCheckAndCreateDomainPresence(d);
break;
case "DELETED":
d = item.object;
domainUID = d.getSpec().getDomainUID();
LOGGER.info(MessageKeys.WATCH_DOMAIN_DELETED, domainUID);
deleteDomainPresence(d);
break;
case "ERROR":
default:
}
}
use of org.openstack4j.model.identity.v3.Domain in project weblogic-kubernetes-operator by oracle.
the class Main method scaleDownIfNecessary.
private static Step scaleDownIfNecessary(DomainPresenceInfo info, Collection<String> servers, Step next) {
Domain dom = info.getDomain();
DomainSpec spec = dom.getSpec();
boolean shouldStopAdmin = false;
String sc = spec.getStartupControl();
if (sc != null && StartupControlConstants.NONE_STARTUPCONTROL.equals(sc.toUpperCase())) {
shouldStopAdmin = true;
next = DomainStatusUpdater.createAvailableStep(DomainStatusUpdater.ALL_STOPPED_AVAILABLE_REASON, next);
}
String adminName = spec.getAsName();
Map<String, ServerKubernetesObjects> currentServers = info.getServers();
Collection<Map.Entry<String, ServerKubernetesObjects>> serversToStop = new ArrayList<>();
for (Map.Entry<String, ServerKubernetesObjects> entry : currentServers.entrySet()) {
if ((shouldStopAdmin || !entry.getKey().equals(adminName)) && !servers.contains(entry.getKey())) {
serversToStop.add(entry);
}
}
if (!serversToStop.isEmpty()) {
return new ServerDownIteratorStep(serversToStop, next);
}
return next;
}
Aggregations