KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sourceforge > cruisecontrol > distributed > BuildAgentService


1 /****************************************************************************
2 * CruiseControl, a Continuous Integration Toolkit
3 * Copyright (c) 2001, ThoughtWorks, Inc.
4 * 651 W Washington Ave. Suite 600
5 * Chicago, IL 60661 USA
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 *
12 * + Redistributions of source code must retain the above copyright
13 * notice, this list of conditions and the following disclaimer.
14 *
15 * + Redistributions in binary form must reproduce the above
16 * copyright notice, this list of conditions and the following
17 * disclaimer in the documentation and/or other materials provided
18 * with the distribution.
19 *
20 * + Neither the name of ThoughtWorks, Inc., CruiseControl, nor the
21 * names of its contributors may be used to endorse or promote
22 * products derived from this software without specific prior
23 * written permission.
24 *
25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
26 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
27 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
28 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
29 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
30 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
31 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
32 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
33 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
34 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
35 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36 ****************************************************************************/

37
38 package net.sourceforge.cruisecontrol.distributed;
39
40 import java.rmi.Remote JavaDoc;
41 import java.rmi.RemoteException JavaDoc;
42 import java.util.Map JavaDoc;
43 import java.util.Date JavaDoc;
44
45 import org.jdom.Element;
46
47 public interface BuildAgentService extends Remote JavaDoc {
48
49     public Element doBuild(Element nestedBuilderElement, Map JavaDoc projectProperties,
50                            Map JavaDoc distributedAgentProperties) throws RemoteException JavaDoc;
51
52     public String JavaDoc getMachineName() throws RemoteException JavaDoc;
53
54     /** @return the date this Build Agent started running (not when a specific build started). */
55     public Date JavaDoc getDateStarted() throws RemoteException JavaDoc;
56
57     public void claim() throws RemoteException JavaDoc;
58     
59     public Date JavaDoc getDateClaimed() throws RemoteException JavaDoc;
60
61     public boolean isBusy() throws RemoteException JavaDoc;
62
63     /** @return the module being built now, or null if no module is being built. */
64     public String JavaDoc getModule() throws RemoteException JavaDoc;
65
66     public boolean resultsExist(String JavaDoc resultsType) throws RemoteException JavaDoc;
67
68     public byte[] retrieveResultsAsZip(String JavaDoc resultsType) throws RemoteException JavaDoc;
69
70     public void clearOutputFiles() throws RemoteException JavaDoc;
71     
72     public void kill(boolean afterBuildFinished) throws RemoteException JavaDoc;
73
74     public void restart(boolean afterBuildFinished) throws RemoteException JavaDoc;
75
76     public boolean isPendingKill() throws RemoteException JavaDoc;
77
78     public Date JavaDoc getPendingKillSince() throws RemoteException JavaDoc;
79
80     public boolean isPendingRestart() throws RemoteException JavaDoc;
81
82     public Date JavaDoc getPendingRestartSince() throws RemoteException JavaDoc;
83
84     public String JavaDoc asString() throws RemoteException JavaDoc;
85 }
86
Popular Tags