public class StandardRemoteProcessGroup extends Object implements RemoteProcessGroup
| Modifier and Type | Class and Description |
|---|---|
private class |
StandardRemoteProcessGroup.InitializationTask |
| Constructor and Description |
|---|
StandardRemoteProcessGroup(String id,
String targetUris,
ProcessGroup processGroup,
ProcessScheduler processScheduler,
BulletinRepository bulletinRepository,
SSLContext sslContext,
StateManager stateManager,
long remoteContentsCacheExpirationMillis) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitauthorize, authorize, checkAuthorization, checkAuthorization, getRequestedResource, isAuthorizedprivate static final org.slf4j.Logger logger
private static final int UNAUTHORIZED_STATUS_CODE
private static final int FORBIDDEN_STATUS_CODE
private final String id
private volatile String targetUris
private final ProcessScheduler scheduler
private final EventReporter eventReporter
private final StateManager stateManager
private final long remoteContentsCacheExpiration
private volatile boolean initialized
private final AtomicReference<String> name
private final AtomicReference<Position> position
private final AtomicReference<String> comments
private final AtomicReference<ProcessGroup> processGroup
private final AtomicBoolean transmitting
private final AtomicReference<String> versionedComponentId
private final SSLContext sslContext
private volatile String communicationsTimeout
private volatile String targetId
private volatile String yieldDuration
private volatile SiteToSiteTransportProtocol transportProtocol
private volatile String proxyHost
private volatile Integer proxyPort
private volatile String proxyUser
private volatile String proxyPassword
private String networkInterfaceName
private InetAddress localAddress
private ValidationResult nicValidationResult
private final ReadWriteLock rwLock
private final Lock readLock
private final Lock writeLock
private final Map<String,StandardRemoteGroupPort> inputPorts
private final Map<String,StandardRemoteGroupPort> outputPorts
private RemoteProcessGroupCounts counts
private Long refreshContentsTimestamp
private Boolean destinationSecure
private Integer listeningPort
private Integer listeningHttpPort
private volatile String authorizationIssue
private final ScheduledExecutorService backgroundThreadExecutor
public StandardRemoteProcessGroup(String id, String targetUris, ProcessGroup processGroup, ProcessScheduler processScheduler, BulletinRepository bulletinRepository, SSLContext sslContext, StateManager stateManager, long remoteContentsCacheExpirationMillis)
public void initialize()
initialize in interface RemoteProcessGroupprivate boolean isConnectionTimeoutError(Exception e)
e - the exception thrown connecting to the remote instancepublic void setTargetUris(String targetUris)
setTargetUris in interface RemoteProcessGrouppublic void reinitialize(boolean isClustered)
reinitialize in interface RemoteProcessGrouppublic void onRemove()
onRemove in interface RemoteProcessGrouppublic void shutdown()
shutdown in interface RemoteProcessGrouppublic String getIdentifier()
getIdentifier in interface ComponentAuthorizablegetIdentifier in interface RemoteProcessGrouppublic String getProcessGroupIdentifier()
getProcessGroupIdentifier in interface ComponentAuthorizablepublic Authorizable getParentAuthorizable()
getParentAuthorizable in interface Authorizablepublic Resource getResource()
getResource in interface Authorizablepublic ProcessGroup getProcessGroup()
getProcessGroup in interface RemoteProcessGrouppublic void setProcessGroup(ProcessGroup group)
setProcessGroup in interface RemoteProcessGrouppublic void setTargetId(String targetId)
public void setTransportProtocol(SiteToSiteTransportProtocol transportProtocol)
setTransportProtocol in interface RemoteProcessGrouppublic SiteToSiteTransportProtocol getTransportProtocol()
getTransportProtocol in interface RemoteProcessGrouppublic String getProxyHost()
getProxyHost in interface RemoteProcessGrouppublic void setProxyHost(String proxyHost)
setProxyHost in interface RemoteProcessGrouppublic Integer getProxyPort()
getProxyPort in interface RemoteProcessGrouppublic void setProxyPort(Integer proxyPort)
setProxyPort in interface RemoteProcessGrouppublic String getProxyUser()
getProxyUser in interface RemoteProcessGrouppublic void setProxyUser(String proxyUser)
setProxyUser in interface RemoteProcessGrouppublic String getProxyPassword()
getProxyPassword in interface RemoteProcessGrouppublic void setProxyPassword(String proxyPassword)
setProxyPassword in interface RemoteProcessGrouppublic String getTargetId()
public String getName()
getName in interface RemoteProcessGrouppublic void setName(String name)
setName in interface RemoteProcessGrouppublic String getCommunicationsTimeout()
getCommunicationsTimeout in interface RemoteProcessGrouppublic void setCommunicationsTimeout(String timePeriod) throws IllegalArgumentException
setCommunicationsTimeout in interface RemoteProcessGroupIllegalArgumentExceptionpublic int getCommunicationsTimeout(TimeUnit timeUnit)
getCommunicationsTimeout in interface RemoteProcessGrouppublic String getComments()
getComments in interface RemoteProcessGrouppublic void setComments(String comments)
setComments in interface RemoteProcessGrouppublic Position getPosition()
getPosition in interface Positionablepublic void setPosition(Position position)
setPosition in interface Positionablepublic String getTargetUri()
getTargetUri in interface RemoteProcessGrouppublic String getTargetUris()
getTargetUris in interface RemoteProcessGrouppublic String getAuthorizationIssue()
getAuthorizationIssue in interface RemoteProcessGrouppublic Collection<ValidationResult> validate()
validate in interface RemoteProcessGrouppublic int getInputPortCount()
public int getOutputPortCount()
public boolean containsInputPort(String id)
public void setInputPorts(Set<RemoteProcessGroupPortDescriptor> ports, boolean pruneUnusedPorts)
setInputPorts in interface RemoteProcessGroupports - the new portspruneUnusedPorts - if true, any ports that are not included in the given set of ports
and that do not have any incoming connections will be removed.NullPointerException - if the given argument is nullpublic boolean containsOutputPort(String id)
id - identifier of porttrue if an Output Port exists with the given ID,
false otherwise.public void setOutputPorts(Set<RemoteProcessGroupPortDescriptor> ports, boolean pruneUnusedPorts)
setOutputPorts in interface RemoteProcessGroupports - the new portspruneUnusedPorts - if true, will remove any ports that are not in the given list and that have
no outgoing connectionsNullPointerException - if the given argument is nullpublic void removeNonExistentPort(RemoteGroupPort port)
removeNonExistentPort in interface RemoteProcessGroupNullPointerException - if the given output Port is nullIllegalStateException - if the port does not belong to this remote
process groupprivate StandardRemoteGroupPort addOutputPort(RemoteProcessGroupPortDescriptor descriptor)
descriptor - the RPG port descriptorIllegalStateException - if an Output Port already exists with the
ID given by dto.getId()public RemoteGroupPort getInputPort(String portIdentifier)
getInputPort in interface RemoteProcessGroupportIdentifier - the ID of the Port to send FlowFiles toRemoteGroupPort that can be used to send FlowFiles to the
port whose ID is given on the remote instancepublic Set<RemoteGroupPort> getInputPorts()
getInputPorts in interface RemoteProcessGroupprivate StandardRemoteGroupPort addInputPort(RemoteProcessGroupPortDescriptor descriptor)
descriptor - port descriptorIllegalStateException - if an Input Port already exists with the ID
given by the ID of the DTO.public RemoteGroupPort getOutputPort(String portIdentifier)
getOutputPort in interface RemoteProcessGrouppublic Set<RemoteGroupPort> getOutputPorts()
getOutputPorts in interface RemoteProcessGroupRemoteGroupPorts used for receiving FlowFiles
from the remote instancepublic RemoteProcessGroupCounts getCounts()
getCounts in interface RemoteProcessGroupprivate void setCounts(RemoteProcessGroupCounts counts)
public Date getLastRefreshTime()
getLastRefreshTime in interface RemoteProcessGrouppublic void refreshFlowContents()
throws CommunicationsException
refreshFlowContents in interface RemoteProcessGroupCommunicationsExceptionpublic String getNetworkInterface()
getNetworkInterface in interface RemoteProcessGrouppublic void setNetworkInterface(String interfaceName)
setNetworkInterface in interface RemoteProcessGrouppublic InetAddress getLocalAddress()
getLocalAddress in interface RemoteProcessGroupprivate org.apache.nifi.remote.util.SiteToSiteRestApiClient getSiteToSiteRestApiClient()
private Set<RemoteProcessGroupPortDescriptor> convertRemotePort(Set<org.apache.nifi.web.api.dto.PortDTO> ports)
ports - to convertpublic boolean isTransmitting()
isTransmitting in interface RemoteProcessGrouppublic void startTransmitting()
startTransmitting in interface RemoteProcessGrouppublic void startTransmitting(RemoteGroupPort port)
startTransmitting in interface RemoteProcessGrouppublic void stopTransmitting()
stopTransmitting in interface RemoteProcessGrouppublic void stopTransmitting(RemoteGroupPort port)
stopTransmitting in interface RemoteProcessGrouppublic boolean isSecure()
throws CommunicationsException
isSecure in interface RemoteProcessGroupCommunicationsExceptionpublic Boolean getSecureFlag()
getSecureFlag in interface RemoteProcessGrouppublic boolean isSiteToSiteEnabled()
isSiteToSiteEnabled in interface RemoteProcessGrouppublic EventReporter getEventReporter()
getEventReporter in interface RemoteProcessGrouppublic void setYieldDuration(String yieldDuration)
setYieldDuration in interface RemoteProcessGrouppublic String getYieldDuration()
getYieldDuration in interface RemoteProcessGrouppublic void verifyCanDelete()
verifyCanDelete in interface RemoteProcessGrouppublic void verifyCanDelete(boolean ignoreConnections)
verifyCanDelete in interface RemoteProcessGrouppublic void verifyCanStartTransmitting()
verifyCanStartTransmitting in interface RemoteProcessGrouppublic void verifyCanStopTransmitting()
verifyCanStopTransmitting in interface RemoteProcessGrouppublic void verifyCanUpdate()
verifyCanUpdate in interface RemoteProcessGrouppublic Optional<String> getVersionedComponentId()
getVersionedComponentId in interface VersionedComponentpublic void setVersionedComponentId(String versionedComponentId)
setVersionedComponentId in interface VersionedComponentpublic StateManager getStateManager()
getStateManager in interface RemoteProcessGroupCopyright © 2021 Apache NiFi Project. All rights reserved.