public void addInputPort(PortStatus port) { inputPorts.put(port.getId(), port); }
public void addOutputPort(PortStatus port) { outputPorts.put(port.getId(), port); }
public Map<String,String> getPortStatusTags(PortStatus status) { final Map<String, String> portTags = new HashMap<>(); portTags.put(MetricNames.PORT_ID, status.getId()); portTags.put(MetricNames.PORT_GROUP_ID, status.getGroupId()); portTags.put(MetricNames.PORT_NAME, status.getName()); return portTags; }
/** * Gets the status for the specified input port. * * @param portId input port id * @return the status for the specified input port */ public PortStatus getInputPortStatus(final String portId) { final ProcessGroup root = getRootGroup(); final Port port = root.findInputPort(portId); // ensure the input port was found if (port == null) { throw new ResourceNotFoundException(String.format("Unable to locate input port with id '%s'.", portId)); } final String groupId = port.getProcessGroup().getIdentifier(); final ProcessGroupStatus processGroupStatus = flowController.getEventAccess().getGroupStatus(groupId, NiFiUserUtils.getNiFiUser(), 1); if (processGroupStatus == null) { throw new ResourceNotFoundException(String.format("Unable to locate group with id '%s'.", groupId)); } final PortStatus status = processGroupStatus.getInputPortStatus().stream().filter(portStatus -> portId.equals(portStatus.getId())).findFirst().orElse(null); if (status == null) { throw new ResourceNotFoundException(String.format("Unable to locate input port with id '%s'.", portId)); } return status; }
/** * Gets the status for the specified output port. * * @param portId output port id * @return the status for the specified output port */ public PortStatus getOutputPortStatus(final String portId) { final ProcessGroup root = getRootGroup(); final Port port = root.findOutputPort(portId); // ensure the output port was found if (port == null) { throw new ResourceNotFoundException(String.format("Unable to locate output port with id '%s'.", portId)); } final String groupId = port.getProcessGroup().getIdentifier(); final ProcessGroupStatus processGroupStatus = flowController.getEventAccess().getGroupStatus(groupId, NiFiUserUtils.getNiFiUser(), 1); if (processGroupStatus == null) { throw new ResourceNotFoundException(String.format("Unable to locate group with id '%s'.", groupId)); } final PortStatus status = processGroupStatus.getOutputPortStatus().stream().filter(portStatus -> portId.equals(portStatus.getId())).findFirst().orElse(null); if (status == null) { throw new ResourceNotFoundException(String.format("Unable to locate output port with id '%s'.", portId)); } return status; }
final PermissionsDTO operatePermissions = createPermissionsDto(new OperationAuthorizable(inputPort)); final PortStatusDTO status = getComponentStatus( () -> groupStatus.getInputPortStatus().stream().filter(inputPortStatus -> inputPort.getIdentifier().equals(inputPortStatus.getId())).findFirst().orElse(null), inputPortStatus -> createPortStatusDto(inputPortStatus) ); final PermissionsDTO operatePermissions = createPermissionsDto(new OperationAuthorizable(outputPort)); final PortStatusDTO status = getComponentStatus( () -> groupStatus.getOutputPortStatus().stream().filter(outputPortStatus -> outputPort.getIdentifier().equals(outputPortStatus.getId())).findFirst().orElse(null), outputPortStatus -> createPortStatusDto(outputPortStatus) );
final PermissionsDTO operatePermissions = createPermissionsDto(new OperationAuthorizable(inputPort)); final PortStatusDTO status = getComponentStatus( () -> groupStatus.getInputPortStatus().stream().filter(inputPortStatus -> inputPort.getIdentifier().equals(inputPortStatus.getId())).findFirst().orElse(null), inputPortStatus -> createPortStatusDto(inputPortStatus) ); final PermissionsDTO operatePermissions = createPermissionsDto(new OperationAuthorizable(outputPort)); final PortStatusDTO status = getComponentStatus( () -> groupStatus.getOutputPortStatus().stream().filter(outputPortStatus -> outputPort.getIdentifier().equals(outputPortStatus.getId())).findFirst().orElse(null), outputPortStatus -> createPortStatusDto(outputPortStatus) );
for (final PortStatus portStatus : inputPortStatusCollection) { final PortStatusDTO portStatusDto = createPortStatusDto(portStatus); final Port inputPort = processGroup.findInputPort(portStatus.getId()); final PermissionsDTO inputPortPermissions = createPermissionsDto(inputPort); inputPortStatusDtoCollection.add(entityFactory.createPortStatusSnapshotEntity(portStatusDto.getAggregateSnapshot(), inputPortPermissions)); for (final PortStatus portStatus : outputPortStatusCollection) { final PortStatusDTO portStatusDto = createPortStatusDto(portStatus); final Port outputPort = processGroup.findOutputPort(portStatus.getId()); final PermissionsDTO outputPortPermissions = createPermissionsDto(outputPort); outputPortStatusDtoCollection.add(entityFactory.createPortStatusSnapshotEntity(portStatusDto.getAggregateSnapshot(), outputPortPermissions));
/** * Creates a PortStatusDTO for the specified PortStatus. * * @param portStatus status * @return dto */ public PortStatusDTO createPortStatusDto(final PortStatus portStatus) { final PortStatusDTO dto = new PortStatusDTO(); dto.setId(portStatus.getId()); dto.setGroupId(portStatus.getGroupId()); dto.setName(portStatus.getName()); dto.setRunStatus(portStatus.getRunStatus().toString()); dto.setTransmitting(portStatus.isTransmitting()); dto.setStatsLastRefreshed(new Date()); final PortStatusSnapshotDTO snapshot = new PortStatusSnapshotDTO(); dto.setAggregateSnapshot(snapshot); snapshot.setId(portStatus.getId()); snapshot.setGroupId(portStatus.getGroupId()); snapshot.setName(portStatus.getName()); snapshot.setRunStatus(portStatus.getRunStatus().toString()); snapshot.setActiveThreadCount(portStatus.getActiveThreadCount()); snapshot.setFlowFilesOut(portStatus.getOutputCount()); snapshot.setBytesOut(portStatus.getOutputBytes()); snapshot.setFlowFilesIn(portStatus.getInputCount()); snapshot.setBytesIn(portStatus.getInputBytes()); StatusMerger.updatePrettyPrintedFields(snapshot); return dto; }
private void serializePortStatus(final String componentType, final JsonArrayBuilder arrayBuilder, final JsonBuilderFactory factory, final PortStatus status, final DateFormat df, final String hostname, final String applicationName, final String platform, final String parentId, final Date currentDate) { final JsonObjectBuilder builder = factory.createObjectBuilder(); final String componentName = status.getName(); if (componentMatchesFilters(componentType, componentName)) { addCommonFields(builder, df, hostname, applicationName, platform, parentId, currentDate, componentType, componentName); addField(builder, "componentId", status.getId()); addField(builder, "activeThreadCount", status.getActiveThreadCount()); addField(builder, "bytesReceived", status.getBytesReceived()); addField(builder, "bytesSent", status.getBytesSent()); addField(builder, "flowFilesReceived", status.getFlowFilesReceived()); addField(builder, "flowFilesSent", status.getFlowFilesSent()); addField(builder, "inputBytes", status.getInputBytes()); addField(builder, "inputCount", status.getInputCount()); addField(builder, "outputBytes", status.getOutputBytes()); addField(builder, "outputCount", status.getOutputCount()); arrayBuilder.add(builder.build()); } }
mergedInputPortMap.put(status.getId(), status); PortStatus merged = mergedInputPortMap.get(statusToMerge.getId()); if (merged == null) { mergedInputPortMap.put(statusToMerge.getId(), statusToMerge.clone()); continue; mergedOutputPortMap.put(status.getId(), status); PortStatus merged = mergedOutputPortMap.get(statusToMerge.getId()); if (merged == null) { mergedOutputPortMap.put(statusToMerge.getId(), statusToMerge.clone()); continue;
public void addOutputPort(PortStatus port) { outputPorts.put(port.getId(), port); }
public void addInputPort(PortStatus port) { inputPorts.put(port.getId(), port); }
private void serializePortStatus(final String componentType, final JsonArrayBuilder arrayBuilder, final JsonBuilderFactory factory, final PortStatus status, final DateFormat df, final String hostname, final String applicationName, final String platform, final String parentId, final Date currentDate) { final JsonObjectBuilder builder = factory.createObjectBuilder(); final String componentName = status.getName(); if (componentMatchesFilters(componentType, componentName)) { addCommonFields(builder, df, hostname, applicationName, platform, parentId, currentDate, componentType, componentName); addField(builder, "componentId", status.getId()); addField(builder, "activeThreadCount", status.getActiveThreadCount()); addField(builder, "bytesReceived", status.getBytesReceived()); addField(builder, "bytesSent", status.getBytesSent()); addField(builder, "flowFilesReceived", status.getFlowFilesReceived()); addField(builder, "flowFilesSent", status.getFlowFilesSent()); addField(builder, "inputBytes", status.getInputBytes()); addField(builder, "inputCount", status.getInputCount()); addField(builder, "outputBytes", status.getOutputBytes()); addField(builder, "outputCount", status.getOutputCount()); arrayBuilder.add(builder.build()); } }