protected synchronized void startHeartBeat() { stopHeartBeat(); ClientSession session = getClientSession(); long interval = session.getLongProperty(ClientFactoryManager.HEARTBEAT_INTERVAL, ClientFactoryManager.DEFAULT_HEARTBEAT_INTERVAL); if (interval > 0L) { FactoryManager manager = session.getFactoryManager(); ScheduledExecutorService service = manager.getScheduledExecutorService(); heartBeat = service.scheduleAtFixedRate(this::sendHeartBeat, interval, interval, TimeUnit.MILLISECONDS); if (log.isDebugEnabled()) { log.debug("startHeartbeat - started at interval={}", interval); } } }
protected synchronized void startHeartBeat() { stopHeartBeat(); ClientSession session = getClientSession(); long interval = session.getLongProperty(ClientFactoryManager.HEARTBEAT_INTERVAL, ClientFactoryManager.DEFAULT_HEARTBEAT_INTERVAL); if (interval > 0L) { FactoryManager manager = session.getFactoryManager(); ScheduledExecutorService service = manager.getScheduledExecutorService(); heartBeat = service.scheduleAtFixedRate(this::sendHeartBeat, interval, interval, TimeUnit.MILLISECONDS); if (log.isDebugEnabled()) { log.debug("startHeartbeat - started at interval={}", interval); } } }
public UserAuthPublicKeyIterator(ClientSession session, SignatureFactoriesManager signatureFactories) throws Exception { super(session); Collection<Stream<? extends PublicKeyIdentity>> identities = new LinkedList<>(); FactoryManager manager = Objects.requireNonNull(session.getFactoryManager(), "No session factory manager"); SshAgentFactory factory = manager.getAgentFactory(); if (factory != null) { try { agent = Objects.requireNonNull(factory.createClient(manager), "No agent created"); identities.add(agent.getIdentities() .stream() .map(kp -> new KeyAgentIdentity(agent, kp.getKey(), kp.getValue()))); } catch (Exception e) { try { closeAgent(); } catch (Exception err) { e.addSuppressed(err); } throw e; } } identities.add(Stream.of(ClientSession.providerOf(session)) .map(KeyIdentityProvider::loadKeys) .flatMap(GenericUtils::stream) .map(kp -> new KeyPairIdentity(signatureFactories, session, kp))); current = identities.stream().flatMap(r -> r).iterator(); }
@Override public void download(String remote, String local, Collection<Option> options) throws IOException { local = ValidateUtils.checkNotNullAndNotEmpty(local, "Invalid argument local: %s", local); ClientSession session = getClientSession(); FactoryManager manager = session.getFactoryManager(); FileSystemFactory factory = manager.getFileSystemFactory(); FileSystem fs = factory.createFileSystem(session); try { download(remote, fs, fs.getPath(local), options); } finally { try { fs.close(); } catch (UnsupportedOperationException e) { if (log.isDebugEnabled()) { log.debug("download({}) {} => {} - failed ({}) to close file system={}: {}", session, remote, local, e.getClass().getSimpleName(), fs, e.getMessage()); } } } }
protected Iterable<KeyAgentIdentity> initializeAgentIdentities(ClientSession session) throws IOException { FactoryManager manager = Objects.requireNonNull(session.getFactoryManager(), "No session factory manager"); SshAgentFactory factory = manager.getAgentFactory(); if (factory == null) {
@Override public SftpFileSystem createSftpFileSystem( ClientSession session, SftpVersionSelector selector, int readBufferSize, int writeBufferSize) throws IOException { ClientFactoryManager manager = session.getFactoryManager(); SftpFileSystemProvider provider = new SftpFileSystemProvider((SshClient) manager, selector); SftpFileSystem fs = provider.newFileSystem(session); fs.setReadBufferSize(readBufferSize); fs.setWriteBufferSize(writeBufferSize); return fs; } }
if (rnd == null) { FactoryManager manager = Objects.requireNonNull(clientSession.getFactoryManager(), "No factory manager"); Factory<? extends Random> factory = Objects.requireNonNull(manager.getRandomFactory(), "No random factory");
ChannelExec channel = openCommandChannel(session, cmd); try { FactoryManager manager = session.getFactoryManager(); FileSystemFactory factory = manager.getFileSystemFactory(); FileSystem fs = factory.createFileSystem(session);
if (rnd == null) { FactoryManager manager = Objects.requireNonNull(clientSession.getFactoryManager(), "No factory manager"); Factory<? extends Random> factory = Objects.requireNonNull(manager.getRandomFactory(), "No random factory");
FactoryManager manager = session.getFactoryManager(); SshAgentFactory factory = manager == null ? null : manager.getAgentFactory();