X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/3913bb7b7d28a6c8f383b7973f72a4fc7a1f4f01..b6c6164308f31135f38e80ab2ad9869825cdf871:/src/java/simgrid/msg/Host.java?ds=sidebyside diff --git a/src/java/simgrid/msg/Host.java b/src/java/simgrid/msg/Host.java index 09322d9df1..45af7ff8de 100644 --- a/src/java/simgrid/msg/Host.java +++ b/src/java/simgrid/msg/Host.java @@ -1,27 +1,25 @@ /* - * simgrid.msg.Host.java 1.00 07/05/01 + * Bindings to the MSG hosts * - * Copyright 2006,2007 Martin Quinson, Malek Cherier + * Copyright 2006,2007,2010 The SimGrid Team * All right reserved. * * This program is free software; you can redistribute * it and/or modify it under the terms of the license *(GNU LGPL) which comes with this package. * - */ + */ package simgrid.msg; -import java.lang.String; - /** * A host object represents a location (any possible place) where a process may run. * Thus it is represented as a physical resource with computing capabilities, some * mailboxes to enable running process to communicate with remote ones, and some private * data that can be only accessed by local process. An instance of this class is always - * binded with the corresponding native host. All the native hosts are automaticaly created + * binded with the corresponding native host. All the native hosts are automatically created * during the call of the method Msg.createEnvironment(). This method take as parameter a * platform file which describes all elements of the platform (host, link, root..). - * You never need to create an host your self. + * You cannot create a host yourself. * * The best way to get an host instance is to call the static method * Host.getByName(). @@ -29,45 +27,40 @@ import java.lang.String; * For example to get the instance of the host. If your platform * file description contains an host named "Jacquelin" : * - * Host jacquelin; - * - * try { - * jacquelin = Host.getByName("Jacquelin"); - * } catch(HostNotFoundException e) { - * System.err.println(e.toString()); - * } - * ... + * \verbatim +Host jacquelin; + +try { + jacquelin = Host.getByName("Jacquelin"); +} catch(HostNotFoundException e) { + System.err.println(e.toString()); +} +... +\endverbatim * - * @author Abdelmalek Cherier - * @author Martin Quinson - * @version 1.00, 07/05/01 - * @see Grid - * @see Simulation - * @see Process - * @since SimGrid 3.3 - * @since JDK1.5011 - */ + */ public class Host { + /** * This attribute represents a bind between a java host object and * a native host. Even if this attribute is public you must never - * access to it. It is set automaticatly during the call of the + * access to it. It is set automatically during the call of the * static method Host.getByName(). * * @see Host.getByName(). - */ + */ public long bind; - + + /** * User data. - */ + */ private Object data; - protected Host() { this.bind = 0; this.data = null; }; - + /** * This static method gets an host instance associated with a native * host of your platform. This is the best way to get a java host object. @@ -75,118 +68,98 @@ public class Host { * @param name The name of the host to get. * * @exception HostNotFoundException if the name of the host is not valid. - * MsgException if the native version of this method failed. - */ - public static Host getByName(String name) - throws HostNotFoundException, NativeException, JniException { - - return Msg.hostGetByName(name); + * NativeException if the native version of this method failed. + */ + public static Host getByName(String name) + throws HostNotFoundException { + if (name==null) + throw new NullPointerException("No host can have a null name"); + return MsgNative.hostGetByName(name); } - + /** - * This static method returns the number of the installed hosts. + * This static method returns the count of the installed hosts. * - * @return The number of the installed hosts. + * @return The count of the installed hosts. * - */ - public static int getNumber() throws NativeException, JniException { - return Msg.hostGetNumber(); + */ + public static int getCount() { + return MsgNative.hostGetCount(); } - + /** * This static method return an instance to the host of the current process. * * @return The host on which the current process is executed. - * - * @exception MsgException if the native version of this method failed. - */ - public static Host currentHost() throws JniException{ - return Msg.hostSelf(); + */ + public static Host currentHost() { + return MsgNative.hostSelf(); } - + /** * This static method returns all of the hosts of the installed platform. * * @return An array containing all the hosts installed. * - * @exception MsgException if the native version of this method failed. - */ - public static Host[] all() throws JniException, NativeException{ - return Msg.allHosts(); + */ + public static Host[] all() { + return MsgNative.allHosts(); } - + /** * This method returns the name of a host. * * @return The name of the host. * - * @exception InvalidHostException if the host is not valid. - */ - public String getName() throws NativeException, JniException{ - return Msg.hostGetName(this); + */ + public String getName() { + return MsgNative.hostGetName(this); } - + /** - * This method sets the data of the host. + * Sets the data of the host. * - */ - public void setData(Object data) { - this.data = data; - } - + */ + public void setData(Object data) { + this.data = data; + } /** - * This method gets the data of the host. - */ + * Gets the data of the host. + */ public Object getData() { return this.data; } - + /** - * This function tests if a host has data. - */ - public boolean hasData() { + * Checks whether a host has data. + */ + public boolean hasData() { return null != this.data; } - + /** * This method returns the number of tasks currently running on a host. * The external load is not taken in account. * * @return The number of tasks currently running on a host. - * - * @exception InvalidHostException if the host is invalid. - * - */ - public int getLoad() throws JniException{ - return Msg.hostGetLoad(this); + */ + public int getLoad() { + return MsgNative.hostGetLoad(this); } - + /** * This method returns the speed of the processor of a host, * regardless of the current load of the machine. * * @return The speed of the processor of the host in flops. * - * @exception InvalidHostException if the host is not valid. - * - */ - - public double getSpeed() throws JniException { - return Msg.hostGetSpeed(this); + */ + public double getSpeed() { + return MsgNative.hostGetSpeed(this); } - - /** - * This method tests if a host is avail. - * - * @return If the host is avail the method returns true. - * Otherwise the method returns false. - * - * @exception JniException if the host is not valid. - * - * - */ - public boolean isAvail()throws JniException { - return Msg.hostIsAvail(this); + + /** This method tests if a host is avail. */ + public boolean isAvail() { + return MsgNative.hostIsAvail(this); } - -} +}