1 |
package appl.parallel; |
2 |
|
3 |
import java.io.Serializable; |
4 |
import java.util.Properties; |
5 |
|
6 |
/** |
7 |
* Information about a {@link ComputingResource}. All entries may return |
8 |
* <code>null</code> if no information is available. Notice that the |
9 |
* information represents the state of the remote Object at the time it was |
10 |
* created. So it may be outdated. The following Properties should be available |
11 |
* on all systems <br> |
12 |
* <ul> |
13 |
* <li>ActiveModel</li> |
14 |
* <li>isAvailable - says if the resource is currently available for use</li> |
15 |
* <li>SystemInformation - Identifies the current System/OS</li> |
16 |
* <li>Name - a name which will be displayed to the user</li> |
17 |
* <li>IP - the IP address of the Object<br> |
18 |
* </li> |
19 |
* </ul> |
20 |
* <br> |
21 |
* |
22 |
* @author Dominik Appl |
23 |
*/ |
24 |
public interface ComputingResourceProperties extends Serializable { |
25 |
|
26 |
Properties getProperties(); |
27 |
|
28 |
/** |
29 |
* Sets a property |
30 |
* @param key the key |
31 |
* @param value the value |
32 |
*/ |
33 |
public void setProperty(String key, String value); |
34 |
|
35 |
/** |
36 |
* |
37 |
* @param key the key |
38 |
* @return the property property associated with that key or null if not found |
39 |
*/ |
40 |
public String getProperty(String key); |
41 |
|
42 |
/** |
43 |
* @return the name of the resource (usually the hostname) |
44 |
*/ |
45 |
public String getName(); |
46 |
|
47 |
/** |
48 |
* @return says if the resource is available for computation (of in use). |
49 |
*/ |
50 |
public boolean isAvailable(); |
51 |
|
52 |
/** |
53 |
* @return the ip of the resource |
54 |
*/ |
55 |
public String getIP(); |
56 |
|
57 |
/** |
58 |
* @return port the resouce is bound to |
59 |
*/ |
60 |
public String getPort(); |
61 |
|
62 |
} |