1402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/******************************************************************************* 2402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Copyright (c) 2000, 2006 IBM Corporation and others. 3402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * All rights reserved. This program and the accompanying materials 4402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * are made available under the terms of the Eclipse Public License v1.0 5402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * which accompanies this distribution, and is available at 6402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * http://www.eclipse.org/legal/epl-v10.html 7402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * 8402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Contributors: 9402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * IBM Corporation - initial API and implementation 10402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll *******************************************************************************/ 11402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/* 12402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Created on 8-Jan-2004 13402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * 14402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * To change this generated comment go to 15402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Window>Preferences>Java>Code Generation>Code Template 16402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 17402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpackage org.eclipse.releng; 18402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 19402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport org.apache.tools.ant.Task; 20402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollimport org.apache.tools.ant.BuildException; 21402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/** 22402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @author SDimitrov 23402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * 24402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * To change this generated comment go to 25402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * Window>Preferences>Java>Code Generation>Code Template 26402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 27402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpublic class FindMachineTask extends Task { 28402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 29402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // findKey represents the key in cfg from which which to obtain the list of machines 30402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll // createKey is written to the registry with the machine name that is available 31402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll //registry mapping of machines being used by a given build 32402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private String markerContainer; 33402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 34402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll//time in seconds to wait before re-checking for an available machine 35402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private int waitInterval; 36402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private String markerName; 37402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private String markerKey="0"; 38402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll//list is the path to the configuration of build machines available for a given build type 39402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private String cfgKey; 40402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll private String cfg; 41402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 42402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 43402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * 44402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 45402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public static void main(String args[]){ 46402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll FindMachineTask test = new FindMachineTask(); 47402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll test.markerContainer = "D:\\junk\\markers"; 48402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll test.cfg="D:\\workspaces\\current\\eclipseInternalBuildTools\\testConfig.properties"; 49402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll test.cfgKey="windowstesting"; 50402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll test.markerName = "200412091500"; 51402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll test.waitInterval = 10; 52402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll test.execute(); 53402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 54402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public FindMachineTask() { 55402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll super(); 56402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 57402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void execute() throws BuildException { 58402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll new BuildMachineManager(cfg,markerContainer,waitInterval,markerName,markerKey,cfgKey); 59402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 60402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 61402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @return Returns the cfg. 62402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 63402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public String getCfg() { 64402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return cfg; 65402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 66402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 67402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 68402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @param cfg The cfg to set. 69402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 70402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void setCfg(String cfg) { 71402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this.cfg = cfg; 72402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 73402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 74402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 75402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @return Returns the createKey. 76402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 77402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public String getMarkerName() { 78402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return markerName; 79402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 80402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 81402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 82402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @param createKey The createKey to set. 83402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 84402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void setMarkerName(String markerName) { 85402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this.markerName = markerName; 86402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 87402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 88402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/** 89402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @return Returns the findKey. 90402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 91402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpublic String getCfgKey() { 92402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return cfgKey; 93402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll} 94402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 95402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/** 96402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @param findKey The findKey to set. 97402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 98402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpublic void setCfgKey(String cfgKey) { 99402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this.cfgKey = cfgKey; 100402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll} 101402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 102402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 103402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @return Returns the registry. 104402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 105402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public String getMarkerContainer() { 106402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return markerContainer; 107402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 108402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 109402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 110402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @param registry The registry to set. 111402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 112402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void setMarkerContainer(String markerContainer) { 113402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this.markerContainer = markerContainer; 114402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 115402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 116402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/** 117402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @return Returns the waitInterval. 118402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 119402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpublic int getWaitInterval() { 120402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return waitInterval; 121402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll} 122402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 123402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll/** 124402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @param waitInterval The waitInterval to set. 125402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 126402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollpublic void setWaitInterval(int waitInterval) { 127402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this.waitInterval = waitInterval; 128402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll} 129402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 130402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 131402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @return Returns the markerKey. 132402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 133402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public String getMarkerKey() { 134402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll return markerKey; 135402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 136402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 137402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll /** 138402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll * @param markerKey The markerKey to set. 139402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll */ 140402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll public void setMarkerKey(String markerKey) { 141402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll this.markerKey = markerKey; 142402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll } 143402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 144402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll} 145