@Override public Void call() throws IOException { // No sense in setting up channel pinger if the channel is being closed setUpPingForChannel(getOpenChannelOrFail(), null, pingTimeoutSeconds, pingIntervalSeconds, false); return null; }
@Override public void afterDisconnect(SlaveComputer computer, TaskListener listener) { getLauncher().afterDisconnect(computer, listener); }
@Override public void run() { if (c.isIdle()) { LOGGER.log(INFO, "Disconnecting computer {0} as it has finished its scheduled uptime", new Object[]{c.getName()}); c.disconnect(OfflineCause .create(Messages._SimpleScheduledRetentionStrategy_FinishedUpTime())); } else { c.setAcceptingTasks(false); } } });
@Override public void launch(SlaveComputer computer, TaskListener listener) throws IOException, InterruptedException { getLauncher().launch(computer, listener); }
@Override public void beforeDisconnect(SlaveComputer computer, TaskListener listener) { getLauncher().beforeDisconnect(computer, listener); }
/** * By default, calls {@link #release}, but should be idempotent. * @since 1.600 */ @Override public void close() { release(); }
@Override public void beforeDisconnect(SlaveComputer computer, TaskListener listener) { core.beforeDisconnect(computer, listener); }
/** * Try to connect to it ASAP. */ @Override public void start(AbstractCloudComputer c) { c.connect(false); }
/** * Called by the {@link Node} to help determine whether or not it should * take the given task. Individual properties can return a non-null value * here if there is some reason the given task should not be run on its * associated node. By default, this method returns <code>null</code>. * * @since 1.413 */ public CauseOfBlockage canTake(BuildableItem item) { return canTake(item.task); // backward compatible behaviour }
@Override public String toString() { return Messages.OfflineCause_LaunchFailed(); } }
@Override public String getDisplayName() { return Messages.RetentionStrategy_Demand_displayName(); } }
@Override public void marshal(Object source, HierarchicalStreamWriter writer, MarshallingContext context) { for (Node o : (NodeList) source) { if(o instanceof EphemeralNode) continue; // skip writeItem(o, context, writer); } }
@Override public String getConfigPage() { return getViewPage(clazz, "configure-entries.jelly"); }
public IdleOfflineCause () { super(hudson.slaves.Messages._RetentionStrategy_Demand_OfflineIdle()); } }
public NodeProperty<?> reconfigure(StaplerRequest req, JSONObject form) throws FormException { return form==null ? null : getDescriptor().newInstance(req, form); }
/** * When do we check again next time? */ protected long checkCycle() { return getIdleMaxTime()/10; }
protected Object readResolve() { if (pingInterval != 0) { return new SetUpRemotePing(PING_TIMEOUT_SECONDS_DEFAULT, pingInterval * 60); } return this; } }
@Override public void preOnline(Computer c, Channel channel, FilePath root, TaskListener listener) { SlaveComputer slaveComputer = null; if (c instanceof SlaveComputer) { slaveComputer = (SlaveComputer) c; } install(channel, slaveComputer); }
@Override public void run() { if (c.isIdle()) { LOGGER.log(INFO, "Disconnecting computer {0} as it has finished all jobs running when " + "it completed its scheduled uptime", new Object[]{c.getName()}); c.disconnect(OfflineCause .create(Messages._SimpleScheduledRetentionStrategy_FinishedUpTime())); } } });