01: /**
02: * This file or a portion of this file is licensed under the terms of
03: * the Globus Toolkit Public License, found in file GTPL, or at
04: * http://www.globus.org/toolkit/download/license.html. This notice must
05: * appear in redistributions of this file, with or without modification.
06: *
07: * Redistributions of this Software, with or without modification, must
08: * reproduce the GTPL in: (1) the Software, or (2) the Documentation or
09: * some other similar material which is provided with the Software (if
10: * any).
11: *
12: * Copyright 1999-2004 University of Chicago and The University of
13: * Southern California. All rights reserved.
14: */package org.griphyn.cPlanner.engine.cleanup;
15:
16: import org.griphyn.cPlanner.classes.SubInfo;
17:
18: import java.util.List;
19:
20: /**
21: * The interface that defines how the cleanup job is invoked and created.
22: *
23: * @author Karan Vahi
24: * @version $Revision: 50 $
25: */
26: public interface Implementation {
27:
28: /**
29: * The version number associated with this API Cleanup Implementation.
30: */
31: public static final String VERSION = "1.0";
32:
33: /**
34: * Creates a cleanup job that removes the files from remote working directory.
35: * This will eventually make way to it's own interface.
36: *
37: * @param id the identifier to be assigned to the job.
38: * @param files the list of <code>PegasusFile</code> that need to be
39: * cleaned up.
40: * @param job the primary compute job with which this cleanup job is associated.
41: *
42: * @return the cleanup job.
43: */
44: public SubInfo createCleanupJob(String id, List files, SubInfo job);
45:
46: }
|