diff options
Diffstat (limited to 'libjava/java')
-rw-r--r-- | libjava/java/awt/font/FontRenderContext.java | 15 | ||||
-rw-r--r-- | libjava/java/awt/geom/Rectangle2D.java | 8 | ||||
-rw-r--r-- | libjava/java/rmi/Naming.java | 46 |
3 files changed, 66 insertions, 3 deletions
diff --git a/libjava/java/awt/font/FontRenderContext.java b/libjava/java/awt/font/FontRenderContext.java index b8202a8..2bec38d 100644 --- a/libjava/java/awt/font/FontRenderContext.java +++ b/libjava/java/awt/font/FontRenderContext.java @@ -1,5 +1,5 @@ /* FontRenderContext.java - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2003 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -88,11 +88,22 @@ public class FontRenderContext && usesFractionalMetrics == rhs.usesFractionalMetrics ()); } + + /** + * Retrieves the affine transform for scaling typographical points + * to raster pixels. + * + * @return a clone of the transform object. + */ public AffineTransform getTransform () { - return affineTransform; + if (affineTransform == null) + return new AffineTransform (); + else + return new AffineTransform (affineTransform); } + /** * Returns the hash code of the font render context. */ diff --git a/libjava/java/awt/geom/Rectangle2D.java b/libjava/java/awt/geom/Rectangle2D.java index e63e1ba..8203ca3 100644 --- a/libjava/java/awt/geom/Rectangle2D.java +++ b/libjava/java/awt/geom/Rectangle2D.java @@ -399,7 +399,13 @@ public abstract class Rectangle2D extends RectangularShape public int getWindingRule() { - return WIND_EVEN_ODD; + // A test program showed that Sun J2SE 1.3.1 and 1.4.1_01 + // return WIND_NON_ZERO paths. While this does not really + // make any difference for rectangles (because they are not + // self-intersecting), it seems appropriate to behave + // identically. + + return WIND_NON_ZERO; } public boolean isDone() diff --git a/libjava/java/rmi/Naming.java b/libjava/java/rmi/Naming.java index b558976..2dd50d3 100644 --- a/libjava/java/rmi/Naming.java +++ b/libjava/java/rmi/Naming.java @@ -44,26 +44,72 @@ import java.rmi.registry.LocateRegistry; public final class Naming { +/** <pre> + * Looks for the remote object that is associated with the named service. + * Name and location is given in form of a URL without a scheme: + * + * //host:port/service-name + * + * The port is optional. + * </pre> + * @param name the service name and location + * @return Remote-object that implements the named service + * @throws NotBoundException if no object implements the service + * @throws MalformedURLException + * @throws RemoteException + */ public static Remote lookup(String name) throws NotBoundException, MalformedURLException, RemoteException { + // hack to accept "rmi://host:port/service" strings + if(name.startsWith("rmi:")){ name = name.substring(4); } URL u = new URL("http:" + name); return (getRegistry(u).lookup(u.getFile().substring(1))); } +/** + * Try to bind the given object to the given service name. + * @param name + * @param obj + * @throws AlreadyBoundException + * @throws MalformedURLException + * @throws RemoteException + */ public static void bind(String name, Remote obj) throws AlreadyBoundException, MalformedURLException, RemoteException { URL u = new URL("http:" + name); getRegistry(u).bind(u.getFile().substring(1), obj); } +/** + * Remove a binding for a given service name. + * @param name + * @throws RemoteException + * @throws NotBoundException + * @throws MalformedURLException + */ public static void unbind(String name) throws RemoteException, NotBoundException, MalformedURLException { URL u = new URL("http:" + name); getRegistry(u).unbind(u.getFile().substring(1)); } +/** + * Forces the binding between the given Remote-object and the given service name, even + * if there was already an object bound to this name. + * @param name + * @param obj + * @throws RemoteException + * @throws MalformedURLException + */ public static void rebind(String name, Remote obj) throws RemoteException, MalformedURLException { URL u = new URL("http:" + name); getRegistry(u).rebind(u.getFile().substring(1), obj); } +/** + * Lists all services at the named registry. + * @param name url that specifies the registry + * @return list of services at the name registry + * @throws RemoteException + * @throws MalformedURLException + */ public static String[] list(String name) throws RemoteException, MalformedURLException { return (getRegistry(new URL("http:" + name)).list()); } |