public SlotFilterBuilder addStateFilter(String stateFilter) { Preconditions.checkNotNull(stateFilter, "stateFilter is null"); SlotLifecycleState state = SlotLifecycleState.lookup(stateFilter); Preconditions.checkArgument(state != null, "unknown state " + stateFilter); stateFilters.add(state); return this; }
public SlotStatus toSlotStatus(String instanceId) { Assignment assignment = null; if (binary != null) { assignment = new Assignment(binary, config); } Assignment expectedAssignment = null; if (expectedBinary != null) { assignment = new Assignment(expectedBinary, expectedConfig); } SlotLifecycleState expectedState = null; if (expectedStatus != null) { expectedState = SlotLifecycleState.valueOf(expectedStatus); } return SlotStatus.createSlotStatusWithExpectedState(id, self, externalUri, instanceId, location, SlotLifecycleState.valueOf(status), assignment, installPath, resources, expectedState, expectedAssignment, statusMessage); }
@Override public int hashCode() { int result = id.hashCode(); result = 31 * result + self.hashCode(); result = 31 * result + externalUri.hashCode(); result = 31 * result + instanceId.hashCode(); result = 31 * result + location.hashCode(); result = 31 * result + (assignment != null ? assignment.hashCode() : 0); result = 31 * result + state.hashCode(); result = 31 * result + version.hashCode(); result = 31 * result + (installPath != null ? installPath.hashCode() : 0); result = 31 * result + resources.hashCode(); result = 31 * result + (expectedState != null ? expectedState.hashCode() : 0); result = 31 * result + (expectedAssignment != null ? expectedAssignment.hashCode() : 0); return result; }
@Override public void setExpectedState(ExpectedSlotStatus slotStatus) { Preconditions.checkNotNull(slotStatus, "slotStatus is null"); if (isDomainCreated()) { List<ReplaceableAttribute> attributes = newArrayList(); attributes.add(new ReplaceableAttribute("state", slotStatus.getStatus().toString(), true)); if (slotStatus.getAssignment() != null) { attributes.add(new ReplaceableAttribute("binary", slotStatus.getAssignment().getBinary(), true)); attributes.add(new ReplaceableAttribute("config", slotStatus.getAssignment().getConfig(), true)); } try { simpleDb.putAttributes(new PutAttributesRequest().withDomainName(domainName).withItemName(slotStatus.getId().toString()).withAttributes(attributes)); expectedStateStoreUp(); } catch (Exception e) { expectedStateStoreDown(e); } } }
public URI buildUri(HttpUriBuilder uriBuilder) { for (String binaryGlob : binaryGlobs) { uriBuilder.addParameter("binary", binaryGlob); } for (String configGlob : configGlobs) { uriBuilder.addParameter("config", configGlob); } for (String hostGlob : hostGlobs) { uriBuilder.addParameter("host", hostGlob); } for (String machineGlob : machineGlobs) { uriBuilder.addParameter("machine", machineGlob); } for (SlotLifecycleState stateFilter : stateFilters) { uriBuilder.addParameter("state", stateFilter.name()); } for (String shortId : slotUuidFilters) { uriBuilder.addParameter("uuid", shortId); } if (selectAll) { uriBuilder.addParameter("all"); } return uriBuilder.build(); }
expectedStatus = status.getExpectedState().toString();
@Override public List<SlotStatusRepresentation> setState(SlotFilter slotFilter, SlotLifecycleState state, String expectedVersion) { URI uri = slotFilter.toUri(uriBuilderFrom(coordinatorUri).replacePath("/v1/slot/lifecycle")); RequestBuilder requestBuilder = RequestBuilder.preparePut() .setUri(uri) .setBodyGenerator(textBodyGenerator(state.name())); if (expectedVersion != null) { requestBuilder.setHeader(GALAXY_SLOTS_VERSION_HEADER, expectedVersion); } List<SlotStatusRepresentation> slots = client.execute(requestBuilder.build(), createJsonResponseHandler(SLOTS_CODEC)); return slots; }
@PUT @Produces(MediaType.APPLICATION_JSON) public Response setState(String newState, @Context UriInfo uriInfo, @HeaderParam(GALAXY_SLOTS_VERSION_HEADER) String expectedSlotsVersion) { Preconditions.checkNotNull(newState, "newState must not be null"); SlotLifecycleState state = SlotLifecycleState.lookup(newState); if (state == null || state == UNKNOWN) { return Response.status(Response.Status.BAD_REQUEST).build(); } // build filter List<UUID> uuids = Lists.transform(coordinator.getAllSlotStatus(), SlotStatus.uuidGetter()); Predicate<SlotStatus> slotFilter = SlotFilterBuilder.build(uriInfo, true, uuids); // set slot state List<SlotStatus> results = coordinator.setState(state, slotFilter, expectedSlotsVersion); // build response return Response.ok(transform(results, fromSlotStatus(coordinator.getAllSlotStatus(), repository))) .header(GALAXY_SLOTS_VERSION_HEADER, createSlotsVersion(results)) .build(); } }
expectedStatus = slotStatus.getExpectedState().toString();
@Override public String getColorizedValue(Column column) { Object value = getObjectValue(column); if (Column.status == column) { SlotLifecycleState state = SlotLifecycleState.lookup(toString(value)); if (SlotLifecycleState.RUNNING == state) { return colorize(state, Color.GREEN); } else if (SlotLifecycleState.UNKNOWN == state) { return colorize(state, Color.RED); } } else if (Column.statusMessage == column) { return colorize(value, Color.RED); } return toString(value); }