[cp-patches] FYI: PortableServer API fixes.

2005-07-23 Thread Meskauskas Audrius

2005-07-22  Audrius Meskauskas  [EMAIL PROTECTED]

* org/omg/PortableServer/RequestProcessingPolicyOperations.java,
org/omg/PortableServer/ServantRetentionPolicyOperations.java,
org/omg/PortableServer/ThreadPolicyOperations.java,
org/omg/PortableServer/IdAssignmentPolicyOperations.java,
org/omg/PortableServer/IdUniquenessPolicyOperations.java,
org/omg/PortableServer/ImplicitActivationPolicyOperations.java,
org/omg/PortableServer/LifespanPolicyOperations.java:
Inherit from PolicyOperations.

? gnu/javax/swing/plaf/gtk/icons/Thumbs.db
Index: org/omg/PortableServer/IdAssignmentPolicyOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/IdAssignmentPolicyOperations.java,v
retrieving revision 1.1
diff -u -r1.1 IdAssignmentPolicyOperations.java
--- org/omg/PortableServer/IdAssignmentPolicyOperations.java17 Jul 2005 
20:05:27 -  1.1
+++ org/omg/PortableServer/IdAssignmentPolicyOperations.java23 Jul 2005 
07:26:10 -
@@ -38,6 +38,7 @@
 
 package org.omg.PortableServer;
 
+import org.omg.CORBA.PolicyOperations;
 
 /**
  * Defines the operations, applicable to the IdAssignmentPolicy.
@@ -45,6 +46,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public interface IdAssignmentPolicyOperations
+  extends PolicyOperations
 {
   /**
* Return the value of this policy type, stated by the current instance.
Index: org/omg/PortableServer/IdUniquenessPolicyOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/IdUniquenessPolicyOperations.java,v
retrieving revision 1.1
diff -u -r1.1 IdUniquenessPolicyOperations.java
--- org/omg/PortableServer/IdUniquenessPolicyOperations.java17 Jul 2005 
20:05:27 -  1.1
+++ org/omg/PortableServer/IdUniquenessPolicyOperations.java23 Jul 2005 
07:26:34 -
@@ -38,6 +38,7 @@
 
 package org.omg.PortableServer;
 
+import org.omg.CORBA.PolicyOperations;
 
 /**
  * Defines the operations, applicable to the IdUniquenessPolicy.
@@ -45,6 +46,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public interface IdUniquenessPolicyOperations
+  extends PolicyOperations
 {
   /**
* Return the value of this policy type, stated by the current instance.
Index: org/omg/PortableServer/ImplicitActivationPolicyOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/ImplicitActivationPolicyOperations.java,v
retrieving revision 1.1
diff -u -r1.1 ImplicitActivationPolicyOperations.java
--- org/omg/PortableServer/ImplicitActivationPolicyOperations.java  17 Jul 
2005 20:05:27 -  1.1
+++ org/omg/PortableServer/ImplicitActivationPolicyOperations.java  23 Jul 
2005 07:26:52 -
@@ -38,6 +38,7 @@
 
 package org.omg.PortableServer;
 
+import org.omg.CORBA.PolicyOperations;
 
 /**
  * Defines the operations, applicable to the ImplicitActivationPolicy.
@@ -45,6 +46,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public interface ImplicitActivationPolicyOperations
+  extends PolicyOperations
 {
   /**
* Return the value of this policy type, stated by the current instance.
Index: org/omg/PortableServer/LifespanPolicyOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/LifespanPolicyOperations.java,v
retrieving revision 1.1
diff -u -r1.1 LifespanPolicyOperations.java
--- org/omg/PortableServer/LifespanPolicyOperations.java17 Jul 2005 
20:05:27 -  1.1
+++ org/omg/PortableServer/LifespanPolicyOperations.java23 Jul 2005 
07:28:24 -
@@ -38,6 +38,7 @@
 
 package org.omg.PortableServer;
 
+import org.omg.CORBA.PolicyOperations;
 
 /**
  * Defines the operations, applicable to the LifespanPolicy.
@@ -45,6 +46,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public interface LifespanPolicyOperations
+  extends PolicyOperations
 {
   /**
* Return the value of this policy type, stated by the current instance.
Index: org/omg/PortableServer/RequestProcessingPolicyOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/RequestProcessingPolicyOperations.java,v
retrieving revision 1.1
diff -u -r1.1 RequestProcessingPolicyOperations.java
--- org/omg/PortableServer/RequestProcessingPolicyOperations.java   17 Jul 
2005 20:05:27 -  1.1
+++ org/omg/PortableServer/RequestProcessingPolicyOperations.java   23 Jul 
2005 07:28:24 -
@@ -38,6 +38,7 @@
 
 package org.omg.PortableServer;
 
+import org.omg.CORBA.PolicyOperations;
 
 /**
  * Defines the operations, applicable to the RequestProcessingPolicy.
@@ -45,6 +46,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public 

[cp-patches] FYI: Added NEWS entry about POA for 0.18 release.

2005-07-23 Thread Meskauskas Audrius

2005-07-23  Audrius Meskauskas  [EMAIL PROTECTED]

NEWS: Added entry about POA.
Index: NEWS
===
RCS file: /cvsroot/classpath/classpath/NEWS,v
retrieving revision 1.86
diff -u -r1.86 NEWS
--- NEWS15 Jul 2005 13:53:04 -  1.86
+++ NEWS23 Jul 2005 10:18:22 -
@@ -1,3 +1,23 @@
+* The Portable Object Adapter should support the output of the
+  recent IDL to java compilers. These compilers now generate servants and 
+  not CORBA objects as before, making the output depended on the existing 
+  POA implementation. Completing POA means that such code can already be 
+  tried to run on Classpath. Our POA is tested for the following usage 
scenarios:
+  
+  POA converts servant to the CORBA object.
+  Servant provides to the CORBA object.
+  POA activates new CORBA object with the given Object Id (byte array) 
+  that is later accessible for the servant.
+  During the first call, the ServantActivator provides servant for this 
+  and all subsequent calls on the current object.
+  During each call, the ServantLocator provides servant for this call only.
+  ServantLocator or ServantActivator forwards call to another server.
+  POA has a single servant, responsible for all objects.
+  POA has a default servant, but some objects are explicitly connected 
+  to they specific servants.
+
+  The POA is verified using tests from the former cost.omg.org.  
+
 New in release 0.17 (Jul 15, 2005)
 
 * gnu.xml fix for nodes created outside a namespace context.
___
Classpath-patches mailing list
Classpath-patches@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-patches


Re: [cp-patches] RFC: New JCL helper functions for RawData handling

2005-07-23 Thread Dalibor Topic

Guilhem Lavaux wrote:

On Fri, 2005-07-22 at 13:55 -0600, Tom Tromey wrote:


Guilhem == Guilhem Lavaux [EMAIL PROTECTED] writes:


Guilhem Here are some new functions for JCL to help create RawData
Guilhem instances and retrieve data from them.

Guilhem +#ifdef POINTERS_ARE_64BIT
Guilhem +  rawDataClass = (*env)-FindClass (env, 
gnu/classpath/RawData64);

At FOSDEM we talked about renaming these ... want to take it on?  :-)




Could you be more specific ? A link to the discussion ? I may take it on
but I need to know what was decided. ;-)


We discussed things during the classpath meeting, see 
http://developer.classpath.org/mediation/Fosdem2005 for a list. No 
decision was reached that I recall or can find documented ;(


cheers,
dalibr topic



___
Classpath-patches mailing list
Classpath-patches@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-patches


[cp-patches] FYI: CORBA POA API fixes

2005-07-23 Thread Meskauskas Audrius

2005-07-23  Audrius Meskauskas  [EMAIL PROTECTED]

* org/omg/PortableServer/ServantLocatorOperations.java,
org/omg/PortableServer/ServantActivatorOperations.java:
Inherit from ServantManagerOperations.
* org/omg/PortableServer/CurrentOperations.java:
Inherit from org.omg.CORBA.CurrentOperations.
org/omg/PortableServer/ForwardRequestHelper.java: New file.

? gnu/javax/swing/plaf/gtk/icons/Thumbs.db
? org/omg/PortableServer/ForwardRequestHelper.java
Index: org/omg/PortableServer/CurrentOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/CurrentOperations.java,v
retrieving revision 1.1
diff -u -r1.1 CurrentOperations.java
--- org/omg/PortableServer/CurrentOperations.java   22 Jul 2005 16:57:47 
-  1.1
+++ org/omg/PortableServer/CurrentOperations.java   23 Jul 2005 16:39:28 
-
@@ -55,6 +55,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public interface CurrentOperations
+  extends org.omg.CORBA.CurrentOperations
 {
   /**
* Returns the Id of the object currently being served. The returned
Index: org/omg/PortableServer/ServantActivatorOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/ServantActivatorOperations.java,v
retrieving revision 1.1
diff -u -r1.1 ServantActivatorOperations.java
--- org/omg/PortableServer/ServantActivatorOperations.java  22 Jul 2005 
16:57:47 -  1.1
+++ org/omg/PortableServer/ServantActivatorOperations.java  23 Jul 2005 
16:40:16 -
@@ -45,6 +45,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public interface ServantActivatorOperations
+  extends ServantManagerOperations
 {
   /**
* This method is invoked whenever a servant for an object is deactivated,
Index: org/omg/PortableServer/ServantLocatorOperations.java
===
RCS file: 
/cvsroot/classpath/classpath/org/omg/PortableServer/ServantLocatorOperations.java,v
retrieving revision 1.1
diff -u -r1.1 ServantLocatorOperations.java
--- org/omg/PortableServer/ServantLocatorOperations.java22 Jul 2005 
16:57:47 -  1.1
+++ org/omg/PortableServer/ServantLocatorOperations.java23 Jul 2005 
16:39:56 -
@@ -46,6 +46,7 @@
  * @author Audrius Meskauskas, Lithuania ([EMAIL PROTECTED])
  */
 public interface ServantLocatorOperations
+  extends ServantManagerOperations
 {
   /**
* If the POA has the USE_SERVANT_MANAGER and NON_RETAIN policies, it
/* ForwardRequestHelper.java --
   Copyright (C) 2005 Free Software Foundation, Inc.

This file is part of GNU Classpath.

GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING.  If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.

Linking this library statically or dynamically with other modules is
making a combined work based on this library.  Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.

As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module.  An independent module is a module which is not derived from
or based on this library.  If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so.  If you do not wish to do so, delete this
exception statement from your version. */


package org.omg.PortableServer;

import gnu.CORBA.Poa.ForwardRequestHolder;

import org.omg.CORBA.Any;
import org.omg.CORBA.BAD_OPERATION;
import org.omg.CORBA.ORB;
import org.omg.CORBA.ObjectHelper;
import org.omg.CORBA.StructMember;
import org.omg.CORBA.TypeCode;
import org.omg.CORBA.portable.InputStream;
import org.omg.CORBA.portable.OutputStream;

/**
 * The helper operations for the exception [EMAIL PROTECTED] ForwardRequest}.
 *
 * @specnote The helper must be here and not in POA subpackage as it must
 * be discovered by the [EMAIL PROTECTED] ObjectCreator} when reading this remote
 * exception.
 *
 * @author Audrius 

[cp-patches] FYI: API doc fixes in javax.swing.*

2005-07-23 Thread David Gilbert
I committed this patch:

2005-07-23  David Gilbert  [EMAIL PROTECTED]

* javax/swing/ImageIcon.java: API doc fixes,
* javax/swing/JLayeredPane.java: likewise,
* javax/swing/JSplitPane.java: likewise,
* javax/swing/JTree.java: likewise,
* javax/swing/JViewport.java: likewise,
* javax/swing/RepaintManager.java: likewise,
* javax/swing/SizeRequirements.java: likewise,
* javax/swing/SortingFocusTraversalPolicy.java.

Regards,

Dave Gilbert

Index: javax/swing/ImageIcon.java
===
RCS file: /cvsroot/classpath/classpath/javax/swing/ImageIcon.java,v
retrieving revision 1.16
diff -u -r1.16 ImageIcon.java
--- javax/swing/ImageIcon.java  2 Jul 2005 20:32:47 -   1.16
+++ javax/swing/ImageIcon.java  23 Jul 2005 19:42:05 -
@@ -338,9 +338,9 @@
*
* @return the load status of the icon image
*
-   * @see [EMAIL PROTECTED] MediaTracker.COMPLETE}
-   * @see [EMAIL PROTECTED] MediaTracker.ABORTED}
-   * @see [EMAIL PROTECTED] MediaTracker.ERRORED}
+   * @see MediaTracker#COMPLETE
+   * @see MediaTracker#ABORTED
+   * @see MediaTracker#ERRORED
*/
   public int getImageLoadStatus()
   {
Index: javax/swing/JLayeredPane.java
===
RCS file: /cvsroot/classpath/classpath/javax/swing/JLayeredPane.java,v
retrieving revision 1.24
diff -u -r1.24 JLayeredPane.java
--- javax/swing/JLayeredPane.java   20 Jul 2005 09:46:33 -  1.24
+++ javax/swing/JLayeredPane.java   23 Jul 2005 19:42:06 -
@@ -39,6 +39,7 @@
 package javax.swing;
 
 import java.awt.Component;
+import java.awt.Container;
 import java.util.Hashtable;
 import java.util.Iterator;
 import java.util.Map;
@@ -57,13 +58,13 @@
  *ddThe layer where most of the normal components are placed. This
  *  is the bottommost layer./dd
  *
- *dt[EMAIL PROTECTED] #PALETTE_LAYER/dt
+ *dt[EMAIL PROTECTED] #PALETTE_LAYER}/dt
  *ddPalette windows are placed in this layer./dd
  *
  *dt[EMAIL PROTECTED] #MODAL_LAYER}/dt
  *ddThe layer where internal modal dialog windows are placed./dd
  *
- *dt[EMAIL PROTECTED] #POPUP_LAYER/dt
+ *dt[EMAIL PROTECTED] #POPUP_LAYER}/dt
  *ddThe layer for popup menus/dd
  *
  *dt[EMAIL PROTECTED] #DRAG_LAYER}/dt
@@ -81,7 +82,8 @@
  * /p
  *
  * pTo change the layer of a component that is already a child of
- * a codeJLayeredPane/code, use the [EMAIL PROTECTED] #setLayer} 
method./p
+ * a codeJLayeredPane/code, use the [EMAIL PROTECTED] #setLayer(Component, 
int)} 
+ * method./p
  *
  * pThe purpose of this class is to translate this view of layers into a
  * contiguous array of components: the one held in our ancestor,
@@ -304,7 +306,7 @@
* @param c the component to move to the front of its layer.
* @throws IllegalArgumentException if the component is not a child of
* this container.
-   * @see #moveToBack()
+   * @see #moveToBack
*/
   public void moveToFront(Component c)
   {
@@ -323,7 +325,7 @@
* @param c the component to move to the back of its layer.
* @throws IllegalArgumentException if the component is not a child of
* this container.
-   * @see #moveToFront()
+   * @see #moveToFront
*/
   public void moveToBack(Component c)
   {
@@ -338,7 +340,7 @@
* @param c the component to get the position of.
* @throws IllegalArgumentException if the component is not a child of
* this container.
-   * @see #setPosition()
+   * @see #setPosition
*/
   public int getPosition(Component c)
   {
@@ -365,7 +367,7 @@
* @param position the position to assign the component to.
* @throws IllegalArgumentException if the component is not a child of
* this container.
-   * @see #getPosition()
+   * @see #getPosition
*/
   public void setPosition(Component c, int position)
   {
Index: javax/swing/JSplitPane.java
===
RCS file: /cvsroot/classpath/classpath/javax/swing/JSplitPane.java,v
retrieving revision 1.6
diff -u -r1.6 JSplitPane.java
--- javax/swing/JSplitPane.java 2 Jul 2005 20:32:49 -   1.6
+++ javax/swing/JSplitPane.java 23 Jul 2005 19:42:06 -
@@ -66,8 +66,6 @@
   
 /**
  * Creates a new AccessibleJSplitPane object.
- *
- * @param value0 DOCUMENT ME!
  */
 protected AccessibleJSplitPane()
 {
Index: javax/swing/JTree.java
===
RCS file: /cvsroot/classpath/classpath/javax/swing/JTree.java,v
retrieving revision 1.30
diff -u -r1.30 JTree.java
--- javax/swing/JTree.java  12 Jul 2005 19:26:41 -  1.30
+++ javax/swing/JTree.java  23 Jul 2005 19:42:08 -
@@ -1729,8 +1729,8 @@
 * 
 * @param prefix the prefix to search for in the cell values
 * @param startingRow the index of the row where to start searching from
-* @param bias the search 

[cp-patches] FYI: API doc fixes for java.text.*

2005-07-23 Thread David Gilbert
I committed this patch:

2005-07-23  David Gilbert  [EMAIL PROTECTED]

* java/text/AttributedString.java: API doc fixes,
* java/text/ChoiceFormat.java: likewise,
* java/text/CollationElementIterator.java: likewise,
* java/text/CollationKey.java: likewise,
* java/text/Collator.java: likewise,
* java/text/DateFormat.java: likewise,
* java/text/DateFormatSymbols.java: likewise,
* java/text/DecimalFormatSymbols.java: likewise,
* java/text/MessageFormat.java: likewise,
* java/text/NumberFormat.java: likewise,
* java/text/ParseException.java: likewise,
* java/text/SimpleDateFormat.java: likewise,
* java/text/StringCharacterIterator.java: likewise.

Regards,

Dave Gilbert

Index: java/text/AttributedString.java
===
RCS file: /cvsroot/classpath/classpath/java/text/AttributedString.java,v
retrieving revision 1.11
diff -u -r1.11 AttributedString.java
--- java/text/AttributedString.java 2 Jul 2005 20:32:41 -   1.11
+++ java/text/AttributedString.java 23 Jul 2005 20:18:12 -
@@ -342,7 +342,8 @@
   * @param begin_index The beginning index.
   * @param end_index The ending index
   *
-  * @param IllegalArgumentException If the list is codenull/code or the 
subrange is not valid.
+  * @throws IllegalArgumentException If the list is codenull/code or the 
+  * subrange is not valid.
   */
 public void
 addAttributes(Map attributes, int begin_index, int end_index)
Index: java/text/ChoiceFormat.java
===
RCS file: /cvsroot/classpath/classpath/java/text/ChoiceFormat.java,v
retrieving revision 1.12
diff -u -r1.12 ChoiceFormat.java
--- java/text/ChoiceFormat.java 2 Jul 2005 20:32:41 -   1.12
+++ java/text/ChoiceFormat.java 23 Jul 2005 20:18:12 -
@@ -86,7 +86,7 @@
* object based on the specified pattern. This pattern is of the form 
* term#string|term#string  For example 1#Sunday|2#Monday|#Tuesday.
*
-   * @param pattern The pattern of terminators and format strings.
+   * @param newPattern The pattern of terminators and format strings.
*
* @exception IllegalArgumentException If the pattern is not valid
*/
@@ -170,7 +170,7 @@
* This is the same pattern type used by the codeapplyPattern/code
* method.
*
-   * @param pattern The pattern of terminators and format strings.
+   * @param newPattern The pattern of terminators and format strings.
*
* @exception IllegalArgumentException If the pattern is not valid
*/
@@ -229,10 +229,11 @@
* codeStringBuffer/code based on the supplied codelong/code
* argument.
*
-   * @param number The number used for determine (based on the range
+   * @param num The number used for determine (based on the range
*   terminators) which format string to append. 
-   * @param sb The codeStringBuffer/code to append the format string to.
-   * @param status Unused.
+   * @param appendBuf The codeStringBuffer/code to append the format 
string 
+   *  to.
+   * @param pos Unused.
*
* @return The codeStringBuffer/code with the format string appended.
*/
@@ -247,10 +248,10 @@
* codeStringBuffer/code based on the supplied codedouble/code
* argument.
*
-   * @param number The number used for determine (based on the range
+   * @param num The number used for determine (based on the range
*   terminators) which format string to append. 
-   * @param sb The codeStringBuffer/code to append the format string to.
-   * @param status Unused.
+   * @param appendBuf The codeStringBuffer/code to append the format 
string to.
+   * @param pos Unused.
*
* @return The codeStringBuffer/code with the format string appended.
*/
@@ -333,7 +334,7 @@
* double less than the specified double will be returned.
*
* @param d The specified double
-   * @param positive codetrue/code to return the next highest
+   * @param next codetrue/code to return the next highest
* double, codefalse/code otherwise. 
*
* @return The next highest or lowest double value.
Index: java/text/CollationElementIterator.java
===
RCS file: /cvsroot/classpath/classpath/java/text/CollationElementIterator.java,v
retrieving revision 1.23
diff -u -r1.23 CollationElementIterator.java
--- java/text/CollationElementIterator.java 2 Jul 2005 20:32:41 -   
1.23
+++ java/text/CollationElementIterator.java 23 Jul 2005 20:18:13 -
@@ -177,9 +177,11 @@
* This method returns the primary order value for the given collation
* value.
*
-   * @param value The collation value returned from codenext()/code or 
codeprevious()/code.
+   * @param order The collation value returned from codenext()/code or 
+   *  codeprevious()/code.
*
-   

[cp-patches] FYI: added API docs for javax.swing.Icon interface

2005-07-23 Thread David Gilbert
I committed this patch:

2005-07-23  David Gilbert  [EMAIL PROTECTED]

* javax/swing/Icon.java: added API doc comments.

Regards,

Dave
Index: javax/swing/Icon.java
===
RCS file: /cvsroot/classpath/classpath/javax/swing/Icon.java,v
retrieving revision 1.6
diff -u -r1.6 Icon.java
--- javax/swing/Icon.java   13 Jul 2005 21:22:44 -  1.6
+++ javax/swing/Icon.java   23 Jul 2005 20:41:35 -
@@ -1,5 +1,5 @@
 /* Icon.java -- 
-   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -46,7 +46,28 @@
  */
 public interface Icon
 {
+  /**
+   * Returns the height of the icon.
+   * 
+   * @return The height of the icon.
+   */
   int getIconHeight();
+  
+  /**
+   * Returns the width of the icon.
+   * 
+   * @return The width of the icon.
+   */
   int getIconWidth();
+  
+  /**
+   * Draws the icon at the location (x, y) on the specified graphics device.
+   * 
+   * @param c  a component related to the icon in some way (can be ignored by
+   some implementing classes).
+   * @param g  the graphics device.
+   * @param x  the x-coordinate.
+   * @param y  the y-coordinate.
+   */
   void paintIcon(Component c, Graphics g, int x, int y);
 }
___
Classpath-patches mailing list
Classpath-patches@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-patches


[cp-patches] FYI: added/updated API docs for javax.swing.BoundedRangeModel

2005-07-23 Thread David Gilbert
I committed this patch:

2005-07-23  David Gilbert  [EMAIL PROTECTED]

* javax/swing/BoundedRangeModel.java: added/updated API doc comments.

Regards,

Dave Gilbert

Index: javax/swing/BoundedRangeModel.java
===
RCS file: /cvsroot/classpath/classpath/javax/swing/BoundedRangeModel.java,v
retrieving revision 1.8
diff -u -r1.8 BoundedRangeModel.java
--- javax/swing/BoundedRangeModel.java  21 Jul 2005 14:59:31 -  1.8
+++ javax/swing/BoundedRangeModel.java  23 Jul 2005 21:27:53 -
@@ -1,5 +1,5 @@
 /* BoundedRangeModel.java --
-   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -38,10 +38,17 @@
 
 package javax.swing;
 
+import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
 
 /**
- * The data model that is used in components that display a range of values,
+ * The data model that represents a irange/i that is constrained to fit 
+ * within specified ibounds/i.  The range is defined as codevalue/code 
+ * to codevalue + extent/code, where both codevalue/code and 
+ * codeextent/code are integers, and codeextent = 0/code.   The bounds
+ * are defined by integers codeminimum/code and codemaximum/code.  
+ * p
+ * This type of model is used in components that display a range of values,
  * like [EMAIL PROTECTED] JProgressBar} and [EMAIL PROTECTED] JSlider}.
  *
  * @author Andrew Selkirk
@@ -49,16 +56,18 @@
 public interface BoundedRangeModel
 {
   /**
-   * getValue
+   * Returns the current value for the model.
* 
-   * @return int
+   * @return The current value for the model.
*
* @see #setValue(int)
*/
   int getValue();
 
   /**
-   * setValue
+   * Sets the value for the model and sends a [EMAIL PROTECTED] ChangeEvent} to
+   * all registered listeners.  The new value must satisfy the constraint
+   * codemin = value = value + extent = max/code.
* 
* @param value the value
*
@@ -67,16 +76,20 @@
   void setValue(int value);
 
   /**
-   * getMinimum
+   * Returns the lower bound for the model.  The start of the model's range 
+   * (see [EMAIL PROTECTED] #getValue()}) cannot be less than this lower bound.
* 
-   * @return int
+   * @return The lower bound for the model.
*
* @see #setMinimum(int)
+   * @see #getMaximum()
*/
   int getMinimum();
 
   /**
-   * setMinimum
+   * Sets the lower bound for the model and sends a [EMAIL PROTECTED] 
ChangeEvent} to all
+   * registered listeners.  The new minimum must be less than or equal to the
+   * start value of the model's range (as returned by [EMAIL PROTECTED] 
#getValue()}).
* 
* @param minimum the minimum value
*
@@ -85,16 +98,22 @@
   void setMinimum(int minimum);
 
   /**
-   * getMaximum
+   * Returns the upper bound for the model.  This sets an upper limit for the
+   * end value of the model's range ([EMAIL PROTECTED] #getValue()} + 
+   * [EMAIL PROTECTED] #getExtent()}).
* 
-   * @return int
+   * @return The upper bound for the model.
*
* @see #setMaximum(int)
+   * @see #getMinimum()
*/
   int getMaximum();
 
   /**
-   * setMaximum
+   * Sets the upper bound for the model and sends a [EMAIL PROTECTED] 
ChangeEvent} to all
+   * registered listeners.  The new maximum must be greater than or equal to 
the
+   * end value of the model's range (as returned by [EMAIL PROTECTED] 
#getValue()} + 
+   * [EMAIL PROTECTED] #getExtent()}).
* 
* @param maximum the maximum value
*
@@ -113,7 +132,7 @@
   boolean getValueIsAdjusting();
 
   /**
-   * setValueIsAdjusting
+   * Sets the codevalueIsAdjusting/code property.
* 
* @param adjusting codetrue/code if adjusting,
* codefalse/code otherwise
@@ -132,7 +151,8 @@
   int getExtent();
 
   /**
-   * setExtent
+   * Sets the extent, which is the length of the model's range, and sends a
+   * [EMAIL PROTECTED] ChangeEvent} to all registered listeners.
* 
* @param extent the extent
*
@@ -141,12 +161,14 @@
   void setExtent(int extent);
 
   /**
-   * setRangeProperties
+   * Sets all the properties for the model in a single call.
+   * 
* @param value the value
* @param extent the extent
* @param minnimum the minimum value
* @param maximum the maximum value
-   * @param adjusting TODO
+   * @param adjusting a flag that indicates the model is being adjusted 
+   *  continuously.
*/
   void setRangeProperties(int value, int extent, int minimum, int maximum,
  boolean adjusting);
@@ -156,7 +178,7 @@
* 
* @param listener the listener to add
* 
-   * @see #removeChangeListener(javax.swing.event.ChangeListener)
+   * @see #removeChangeListener(ChangeListener)
*/
   void addChangeListener(ChangeListener listener);
 
@@ -165,7 +187,7 @@
* 
* @param listener the listener to remove
*
-   * @see 

Re: [cp-patches] RFC: misc NIO fixes

2005-07-23 Thread Casey Marshall
Committed. I changed a few minor things, such as using Mark's  
suggestion to use 'madvise' to load the file into core.


I can't get this to work with Jamvm on Darwin; I get a bizarre  
segfault when trying to create the new MappedByteBufferImpl, and  
apparently 'mincore' does not work properly if the mapped region is  
only one page in size. This appears to work fine on GNU/Linux,  
however, so I'm putting it down to problems with Darwin.


On Jul 18, 2005, at 11:58 PM, Casey Marshall wrote:


Hi,

Attached is a patch I'd like to get some comments on, before I  
check it in, especially if anyone can spot holes in my C. This patch


  - Implements FileChannel.map, and the native methods needed for  
MappedByteBufferImpl.
  - Adds a bulk put implementation to DirectByteBufferImpl using  
memcpy. This resulted in a 10x speedup of that method on jamvm (it  
is almost as good as the Blackdown JVM 1.4.2).
  - Fixes a memory leak in the native implementation of the bulk  
'get' method in VMDirectByteBuffer (it never called  
ReleaseByteArrayElements for the source array).


Ok? I might be too busy to get to this until next weekend.

(Apologies if the patch is 'application/octet-stream.' If anyone  
knows how to convince Mail.app that '.patch' is text/plain or text/ 
x-patch, I'd like to hear how.)


2005-07-18  Casey Marshall  [EMAIL PROTECTED]

* configure.ac (AC_CHECK_HEADERS): add sys/mman.h.
(AC_CHECK_FUNCS): add mmap and related functions.
* include/java_nio_VMDirectByteBuffer.h: regenerated.
* java/nio/DirectByteBufferImpl.java (put): new method.
* native/jni/java-nio/gnu_java_nio_channels_FileChannelImpl.c
(ALIGN_DOWN): new macro.
(ALIGN_UP): new macro.
(Java_gnu_java_nio_channels_FileChannelImpl_mapImpl): implemented.
* native/jni/java-nio/java_nio_MappedByteBufferImpl.c: updated
copyright years.
(ALIGN_DOWN): new macro.
(ALIGN_UP): new macro.
(get_pagesize): new function.
(get_raw_values): new function.
(Java_java_nio_MappedByteBufferImpl_unmapImpl): implemented.
(Java_java_nio_MappedByteBufferImpl_isLoadedImpl): implemented.
(Java_java_nio_MappedByteBufferImpl_loadImpl): implemented.
(Java_java_nio_MappedByteBufferImpl_forceImpl): implemented.
* native/jni/java-nio/java_nio_VMDirectByteBuffer.c
(Java_java_nio_VMDirectByteBuffer_put): renamed to
 
'Java_java_nio_VMDirectByteBuffer_put__Lgnu_classpath_RawData_2IB.'
 
(Java_java_nio_VMDirectByteBuffer_get__Lgnu_classpath_RawData_2I_3BII) 
:

call 'ReleaseByteArrayElements' on the source byte array elements.
 
(Java_java_nio_VMDirectByteBuffer_put__Lgnu_classpath_RawData_2I_3BII) 
:

new method.
* vm/reference/java/nio/VMDirectByteBuffer.java
(put): new method.


nio.patch
___
Classpath-patches mailing list
Classpath-patches@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-patches





___
Classpath-patches mailing list
Classpath-patches@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath-patches


Some feedback from ApacheCon

2005-07-23 Thread Leo Simons
Hi gang!

Mark Wielaard wrote on harmony-dev:
snip/
 Some of the people around the GNU Classpath projects really don't
 feel that they are part of Harmony. And I do try to bring them in. But
 when some of these people tried to get a feeling how/what people thought
 about what they have been working on for the last few years there wasn't
 any real technical feedback.

Hmm.

Non-technical feedback:

I gave a lighting lottery talk at ApacheCon EU that pointed out some of
the stuff that can be done with the free java stuff right now (like natively
compiling eclipse). There were more than a few people that couldn't quite
believe it. When I mentioned lines of code being written around here, lines
of code being written/day, etc etc, there were some spontaneous oohs and
aahs.

Several people came up to me later saying they failed to get stuff running.
And honesty, it ain't so easy to figure out five-line configure statements
if you're used to drag-and-dropping a file into your applications folder and
being done with it (I'm a mac user). If you guys get your stuff out into
those linux distros (and into DarwinPorts please!) and eclipse and ant are
by default configured to use it then there will be more people using it. To
give...

Technical feedback:

I don't know much about VMs. I haven't got much useful feedback to give.
Most of the java developers out there in the open source world don't. We
just use them. Most java developers are on average happy enough with sun's
stuff (though bea's is often considered better), more importantly are very
*used* to it being there and doing what it does.

That said, I almost never run any of sun's CLI tools. I just use Ant, or
Maven. I've been told over 90% of the java developers out there use Ant as
their build tool of choice. That percentage is not very likely to go down.
So integrating tightly with ant is *very* important.

(...)

Do remember there is an Apache Top-Level Project dedicated in part to
getting you guys a certain kind of feedback, and we finally got things back
up and running:

  http://gump.zones.apache.org/gump/kaffe/

I consider the free java community the second-most important user of Gump
(first one is Apache itself :-)) and quite a bit of our development time is
going into making sure the next version of gump will be even more useful for
projects like classpath, kaffe, ...

Licensing feedback:

The Apache License and the GPL are not compatible. (It seems we are getting
closer to figuring out in what sense the Apache License and the LGPL are
compatible, stay tuned.)

Apache atm considers fixing this mess so important that it is on the top of
the list for our legal team (actually, it is slots 1 *and* 2). We've got a
whole bunch of people spending a lot of their time on all sides (usually
spare Sunday evenings and the like) trying to bridge the licensing divide in
the java world. And the thing that drives this effort atm is that Apache
wants to use and distribute and contribute to projects like classpath.


I hope this helps.

Cheers,

Leo




___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Implementation details of VMStackWalker

2005-07-23 Thread ingo . proetel

 The next thing I would like to have is a method to get the calling
 method name. This would be good for logging.

 You could create a Throwable() object and then get the StackFrame[].

That is what the logging API currently does. But that's terrribly
inefficient. We could add a new method to VMStackWalker that returns the
calling method name and in the reference implementation it will just do
the Throwable thing. Then every VM can decide if they want do add a native
method.

 Otherwise, you'd have to add a new native method.

 For the security part: Is it enough to check if the class loader of
 context[0] is the boot classloader?

 Not sure what the question is here.

In the VMStackWalker source it says only code loaded from the boot
classloader may call the methods of this class. But how should we make
sure? My question was if it is enough to check if the class in
getClassContext()[0] (i.e. the class that actually invoked a method on
VMstackWalker directly or through reflection) was loaded by the boot
classloader.


Ingo



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


additional 16x16 Metal icons

2005-07-23 Thread theUser BL

At first, thx to Tom, for the answer to my last postion Metal icons.

But are drawn 16x16 icons needed?

I have seen
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/plaf/metal/MetalIconFactory.java
in CLasspath 0.17

So I have created
http://www.theuserbl.ag.vu/GNUIcons.jar

Which includes the first column the icons of Classpath 0.17 and the other 
are drawn by me.

If you want I can try to integrate my icons in MetalIronFactory.
But is it legal to do it? The code is completly new. And independent to 
Suns. But the 16x16 icons as result are the same like Suns one. They are 
pixel for pixel the same.

I have only doing that, because the Classpath 0.17 icons are Sun icons, too.

Additional I have created
http://www.theuserbl.ag.vu/AllIcons.jar

ehcih is a modified version of DisabledNodeTreeExample.java at
http://www.crionics.com/products/opensource/faq/swing_ex/JTreeExamples3.html

The idea is to show all existing drawn 16x16 icons in a JTree. But on Java 
1.4 and Java 5 some icons makes errors. So in this cases I have created an 
Icon with a red x.



Greatings
theuserbl




___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Implementation details of VMStackWalker

2005-07-23 Thread Ingo Prötel
Am Freitag, den 22.07.2005, 23:59 +0200 schrieb Mark Wielaard:
 Hi,
 
 On Fri, 2005-07-22 at 18:01 +0100, Andrew Haley wrote:
  Ingo Prötel writes:
  
I just implemented VMStackWalker for our VM and have some questions.

The reference implementation of 'getCallingClass()' and
'getCallingClassLoader()' just look at the third entry in the class
context. Would it not be better to return the first class that is not
assignable to the class in context[0] ? That way we could cope with
classes that first call some private or protected classes an then ends
up calling the stack walker. 
  
  In gcj, we have a method called GetCallingClass(Class c).  It searches
  firstly for a method declared in class c, then for a method not
  declared in c.  We have found, after a certain amount of trouble, that
  this is the right way to do things; it means that an arbitrary number
  of stack frames can be between the direct caller of GetCallingClass
  and the user code, and it also means that you don't have to check for
  assignability, but for an exact match.
 
 I proposed something similar a while ago:
 http://lists.gnu.org/archive/html/classpath-patches/2005-01/msg00138.html
 
 Jeroen did object strongly to this approach though since he felt that
 having (and constructing) an extra argument for this function was too
 much overhead for runtimes that didn't need it to begin with.
  
 It might be good to review that thread and see how/if we can have some
 solution/compromise here since it seems that gcj actually needs this
 functionality. For the other runtimes we did find some workarounds back
 then (how fragile those are I don't actually know).
 
My proposal does not go that far and would not be as universal as adding
a parameter.

I would like to get the common case where private or protected methods
are called before the actual stack check happens. This changes the
current semantic but I feel that it would be more useful and less
fragile to changes of classes that want to use VMStackWalker. If there
is a real need for a method with the current semantic we could just add
a method to the interface for the new semantic.

ingo
-- 
Ingo Prötel  [EMAIL PROTECTED]
aicas GmbHhttp://www.aicas.com
Haid-und-Neu-Str. 18phone   +49 721 663 968-32
76131 Karlsruhe fax +49 721 663 968-93
Germany  




___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: additional 16x16 Metal icons

2005-07-23 Thread theUser BL

So I have created
http://www.theuserbl.ag.vu/GNUIcons.jar

[...]

Additional I have created
http://www.theuserbl.ag.vu/AllIcons.jar


Oh, I have forgotten to say:
Both are not only executable *.jar files.
They both also included the *.java Source in it.


Greatings
theuserbl




___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Implementation details of VMStackWalker

2005-07-23 Thread Archie Cobbs

[EMAIL PROTECTED] wrote:

The next thing I would like to have is a method to get the calling
method name. This would be good for logging.


You could create a Throwable() object and then get the StackFrame[].


That is what the logging API currently does. But that's terrribly
inefficient. We could add a new method to VMStackWalker that returns the
calling method name and in the reference implementation it will just do
the Throwable thing. Then every VM can decide if they want do add a native
method.


Sounds reasonable. We take this same approach with getCallingClass()
and getCallingClassLoader(), which can be implemented more efficiently
in native code, but are also have the fallback Java implementation.


For the security part: Is it enough to check if the class loader of
context[0] is the boot classloader?


Not sure what the question is here.


In the VMStackWalker source it says only code loaded from the boot
classloader may call the methods of this class. But how should we make
sure? My question was if it is enough to check if the class in
getClassContext()[0] (i.e. the class that actually invoked a method on
VMstackWalker directly or through reflection) was loaded by the boot
classloader.


I didn't write that comment so I'm not sure how (if at all) it
is enforced. Not sure what the real security problem is though,
even if we did allow random code to call these methods. Maybe
someone else can shed some light?

-Archie

__
Archie Cobbs  *CTO, Awarix*  http://www.awarix.com


___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Implementation details of VMStackWalker

2005-07-23 Thread Archie Cobbs

Ingo Prötel wrote:

I would like to get the common case where private or protected methods
are called before the actual stack check happens. This changes the
current semantic but I feel that it would be more useful and less
fragile to changes of classes that want to use VMStackWalker. If there
is a real need for a method with the current semantic we could just add
a method to the interface for the new semantic.


None of the existing code in Classpath that uses VMStackWalker calls
it through private or protected methods, so I'm not sure why you're
saying that having private and protected methods is a common case.

Anyway, the reason it's done with the current simple semantics is to make
these calls as efficient as possible. Although your semantics would make
things more robust in the future, you have to balance that against
a (probably small) loss of efficiency.

-Archie

__
Archie Cobbs  *CTO, Awarix*  http://www.awarix.com


___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: additional 16x16 Metal icons

2005-07-23 Thread Roman Kennke

Hi theUser (what is your real name btw?)


At first, thx to Tom, for the answer to my last postion Metal icons.

But are drawn 16x16 icons needed?


Generally, we have most of the icons that are needed atm, which is not 
to say that we are complete with icons. There are a lot of things 
missing in Swing and in the future we might need more icons for sure.



So I have created
http://www.theuserbl.ag.vu/GNUIcons.jar



If you want I can try to integrate my icons in MetalIronFactory.


This would indeed more useful.

 But the 16x16 icons as result are the same like Suns one. They are

pixel for pixel the same.


As long as your code is really done by yourself this should be no problem.

I have only doing that, because the Classpath 0.17 icons are Sun icons, 
too.


That is not generally true, but in the case of Metal I try to come close 
to the Metal look and feel, which is documented here:


http://java.sun.com/products/jlf/ed2/book/index.html

If you really want to contribute stuff to GNU Classpath, you should look 
at these pages:

http://developer.classpath.org/mediation/ClasspathFirstSteps#head-8bcf049fdf56f07b25964f6c52dd751634cf4782

Most importantly, we would need a copyright assignment from you, since 
this cannot be considered a minor contribution that we accept without 
assigment.


Regards, Roman


___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: JNI assertion failure

2005-07-23 Thread Archie Cobbs

Archie Cobbs wrote:

With Classpath 0.16, trying to run a very simple Swing demo under JCVM,
I get a JNI assertion failure in a call to GetIntField(), because the 
object

type and the fieldID are not compatible:

   gnu/java/awt/peer/gtk/[EMAIL PROTECTED] not instance of 
gnu/java/awt/peer/gtk/GtkGenericPeer


Here is the relevant stack trace snippet:

#7  0x29f862d7 in 
Java_gnu_java_awt_peer_gtk_GdkGraphics_initState__Lgnu_java_awt_peer_gtk_GtkComponentPeer_2 
(env=0x107ed6a0, obj=0x29795698, peer=0x2979569c)

at gnu_java_awt_peer_gtk_GdkGraphics.c:154


Hmm, no response.. can anyone else confirm this problem??

It looks like this code is completely broken, because
it's trying to save a pointer in a field that doesn't
exist. Line 154 of gnu_java_awt_peer_gtk_GdkGraphics.c says:

  NSA_SET_PTR (env, obj, g)

but obj is a gnu/java/awt/peer/gtk/GdkGraphics object, not
a gnu/java/awt/peer/gtk/GtkGenericPeer object, the class that
contains the native_state field.


Since nobody seems to be listening, I'm going to check in the
attached patch. This will cause all programs that use the GTK
peer to crash with an assertion failure. Sorry! The code
is broken but I don't know how to fix it. At least now we get
an assertion failure instead of random memory corruption.

You have been warned :-)

-Archie

__
Archie Cobbs  *CTO, Awarix*  http://www.awarix.com
Index: native/jni/classpath/native_state.c
===
RCS file: /cvsroot/classpath/classpath/native/jni/classpath/native_state.c,v
retrieving revision 1.11
diff -u -r1.11 native_state.c
--- native/jni/classpath/native_state.c 14 Jul 2005 22:07:02 -  1.11
+++ native/jni/classpath/native_state.c 23 Jul 2005 19:30:28 -
@@ -36,6 +36,7 @@
 exception statement from your version. */
 
 #include stdlib.h
+#include assert.h
 #include jni.h
 #include native_state.h
 
@@ -214,6 +215,10 @@
 cp_gtk_set_state (JNIEnv * env, jobject obj, struct state_table *table, void 
*state)
 {
   jint obj_id;
+
+  assert ((*env)-IsAssignableFrom(env,
+(*env)-GetObjectClass(env, obj), table-clazz));
+
   obj_id = (*env)-GetIntField (env, obj, table-hash);
 
   if ((*env)-ExceptionOccurred (env) != NULL)
@@ -227,6 +232,10 @@
 cp_gtk_get_state (JNIEnv * env, jobject obj, struct state_table *table)
 {
   jint obj_id;
+
+  assert ((*env)-IsAssignableFrom(env,
+(*env)-GetObjectClass(env, obj), table-clazz));
+
   obj_id = (*env)-GetIntField (env, obj, table-hash);
 
   if ((*env)-ExceptionOccurred (env) != NULL)
@@ -239,6 +248,10 @@
 cp_gtk_remove_state_slot (JNIEnv * env, jobject obj, struct state_table *table)
 {
   jint obj_id;
+
+  assert ((*env)-IsAssignableFrom(env,
+(*env)-GetObjectClass(env, obj), table-clazz));
+
   obj_id = (*env)-GetIntField (env, obj, table-hash);
 
   if ((*env)-ExceptionOccurred (env) != NULL)
___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: Some feedback from ApacheCon

2005-07-23 Thread Dalibor Topic

Leo Simons wrote:

Hi gang!

Mark Wielaard wrote on harmony-dev:
snip/


Some of the people around the GNU Classpath projects really don't
feel that they are part of Harmony. And I do try to bring them in. But
when some of these people tried to get a feeling how/what people thought
about what they have been working on for the last few years there wasn't
any real technical feedback.


Hi Leo, hi team!

I visited the ApacheCon Europe on Thursday evening, and I believe that 
remark from Mark led to Apaches and other folks I've never met hugging 
me. I hereby pass on that hug to the GNU Classpath project in general, 
and everyone else.



Non-technical feedback:

I gave a lighting lottery talk at ApacheCon EU that pointed out some of
the stuff that can be done with the free java stuff right now (like natively
compiling eclipse). There were more than a few people that couldn't quite
believe it. When I mentioned lines of code being written around here, lines
of code being written/day, etc etc, there were some spontaneous oohs and
aahs.


Yeah. It has been fun to see Leo use his 5 minutes to tell people about 
all sorts of cool stuff happening and working with the Free Runtimes in 
an excited and engaging way. He improvised a really nice instant talk 
and did make people curious whether all of that is really true and how 
well it works. Geir did a 5 minute brief on Harmony and encouraged 
people to come and meet at the BOF, with the resulting crowd filling 
Studio A nicely.[1]


Given that BOFs took place during dinner time for most people and after 
free beer was had by the audience during lightning talks ... quite an 
achievement by Leo and Geir. There is a good amount of genuine, friendly 
interest among Apache developers about the long haired friends of Mark. 
I have put 'wear a wig next time' on my TODO list for ApacheCon Europe 2006.


The BOF has been going on on IRC in parallel with Mark contributing 
answers, questions and insight via the wire. That worked quite well, as 
far as I can tell, thanks to Leo acting as the official transcription 
guy. The questions in the BOF largely centered around the legal aspects, 
of course. ;) I believe it came across pretty nicely that the legal 
issues indeed are complicated, dealing with Sun's licenses is awfully 
complicated and I elaborated on our practices in Kaffe  GNU Classpath a 
bit and why you therefore should avoid getting bound by SCSL, JRL and 
all that. Geir explained why exposure to Sun's code can lead to 
copyright violations, we discussed how the compatiblity certification 
process may work, and why bringing ASF and FSF to the same side of the 
table is hard work but both possible and desirable and so on.


On the technical side, questions were raised what contributors should 
know before starting, and the usual literature was recommended, and how 
to make sure one's code will run on Harmony wrt usage of unspecified 
classes with Geir explaining that such code is VM-dependant, and in 
general therefore broken, and me pointing people to GNU Classpath's wiki 
for a set of classical portability mistakes and how to fix them. The 
audience was also interested into what future may bring, and that led 
pretty directly to dinner.


I have, among other people, met Stefan Bodewig, from the Ant project, 
and had a nice chat with him on ant  kaffe and how we are glad to see 
Apache Gump being up again with a Kaffe instance to see where ant  GNU 
Classpath Tools project do not work well enough together. We've 
discussed upcoming changes to rmic (thanks to Archit's work) briefly, 
and so on. I've also met with various other Apache developers from as 
various projects as SpamAssasin, Cocoon, Forrest, and so on. They are 
all nice, fun-loving people with various preference of hair-styles. Give 
them a hug, if they happen to be at a conference you are at (OSCON was 
mentioned a few times and I recommended people go and see Tom Tromey 
present about the state of the art). Danese Cooper introduced me to many 
interesting people like Ben Laurie, but eventually I ended up discussing 
licenses and GPL compatiblity all night long with Cliff Schmidt, 
apache's VP of legal affairs over drinks, license printouts and notebooks.



Several people came up to me later saying they failed to get stuff running.
And honesty, it ain't so easy to figure out five-line configure statements
if you're used to drag-and-dropping a file into your applications folder and
being done with it (I'm a mac user). If you guys get your stuff out into
those linux distros (and into DarwinPorts please!) and eclipse and ant are
by default configured to use it then there will be more people using it. To
give...


See  http://kaffe.darwinports.com/ and 
http://www.jpackage.org/rpm.php?id=2424  
http://www.jpackage.org/rpm.php?id=1816 for some starting points. Maybe 
those should be more prominent on the (still ugly) Kaffe web site.


Debian, Ubuntu and Fedora Core 4+ have got packages for the latest GNU 

ClasspathToolkit redesign.

2005-07-23 Thread Sven de Marothy
Hi all,
Ok, I've been looking into the issue of our AWT peer interface now that
I've been running my peers on Classpath in earnest.

The goal here is to try to bring our peer interface as close to Sun's
as possible. And simplify things for potential peer-authors.

First off, ClasspathToolkit provides dummy implementations for a bunch
of Toolkit methods (such as createImage(String), implemented on
createImage(URL)). *All* of these happen to be overloaded in GtkToolkit,
the only implementation. So I don't really see the point of this.
I suggest just dropping them. 

What remains then? Abstract methods, i.e. our extensions to the Toolkit
interface. Let's go through them:

Method: getLocalGraphicsEnvironment()
Comment: This is already done by
GraphicsEnvironment.getLocalGraphicsEnvironment(), which gets the
local one from the property java.awt.graphicsenv. So this is
unnecessary. The peers should just be required to set that property
instead.

Method: getClasspathFontPeer(), getClasspathTextLayoutPeer(), getFont() 
Comment: We need these. No way around that. But they could perhaps be
put in a seperate ClasspathFontInterface or something.

Method: createFont()
Comment: Um, we don't even implement this ourselves. Sorry Sacha, but
there's no point. Right now anyway.

Method: createRobot()
Comment: This we need. But it's a rather singular item. Replace with a
property setting? Certain peers may not (or cannot) have Robots anyway.

Method: createEmbeddedWindow ()
Comment: What's an EmbeddedWindow and why do we need this as part of the
peer interface?

Method: registerImageIOSpis()
Comment: Unnecessary. The peers can register their SPIs (if they have
any) themselves without this.

Method: nativeQueueEmpty(), wakeNativeQueue(), iterateNativeQueue()
Comment: These are specific to how the GTK peers handles threads and
events, and should certainly not be part of the interface. The versions
of EventQueue using these methods should be reverted too. The GTK peers
should extend and overload EventQueue for their custom approach instead.

Summary: So, my opinion: Keep most of the font stuff and the robot
stuff. Get rid of the rest, and we'll have an interface which is both
closer to the JDKs, and simpler.

Comments?

/Sven



___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


Re: JNI assertion failure

2005-07-23 Thread Dalibor Topic

Archie Cobbs wrote:

Archie Cobbs wrote:


With Classpath 0.16, trying to run a very simple Swing demo under JCVM,
I get a JNI assertion failure in a call to GetIntField(), because the 
object

type and the fieldID are not compatible:

   gnu/java/awt/peer/gtk/[EMAIL PROTECTED] not instance of 
gnu/java/awt/peer/gtk/GtkGenericPeer


Here is the relevant stack trace snippet:

#7  0x29f862d7 in 
Java_gnu_java_awt_peer_gtk_GdkGraphics_initState__Lgnu_java_awt_peer_gtk_GtkComponentPeer_2 
(env=0x107ed6a0, obj=0x29795698, peer=0x2979569c)

at gnu_java_awt_peer_gtk_GdkGraphics.c:154



Hmm, no response.. can anyone else confirm this problem??

It looks like this code is completely broken, because
it's trying to save a pointer in a field that doesn't
exist. Line 154 of gnu_java_awt_peer_gtk_GdkGraphics.c says:

  NSA_SET_PTR (env, obj, g)

but obj is a gnu/java/awt/peer/gtk/GdkGraphics object, not
a gnu/java/awt/peer/gtk/GtkGenericPeer object, the class that
contains the native_state field.



Since nobody seems to be listening, I'm going to check in the
attached patch. This will cause all programs that use the GTK
peer to crash with an assertion failure. Sorry! The code
is broken but I don't know how to fix it. At least now we get
an assertion failure instead of random memory corruption.

You have been warned :-)


Heh. ;)


+  assert ((*env)-IsAssignableFrom(env,
+(*env)-GetObjectClass(env, obj), table-clazz));
+
   obj_id = (*env)-GetIntField (env, obj, table-hash);


Doesn't GetObjectClass change the state of env? If that's the case, it 
maybe shouldn't be an assert.


cheers,
dalibor topic


___
Classpath mailing list
Classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/classpath


[commit-cp] classpath ./ChangeLog org/omg/PortableServer/Id...

2005-07-23 Thread Audrius Me�kauskas
CVSROOT:/cvsroot/classpath
Module name:classpath
Branch: 
Changes by: Audrius Meškauskas [EMAIL PROTECTED]  05/07/23 07:42:32

Modified files:
.  : ChangeLog 
org/omg/PortableServer: IdAssignmentPolicyOperations.java 
IdUniquenessPolicyOperations.java 
ImplicitActivationPolicyOperations.java 
LifespanPolicyOperations.java 
RequestProcessingPolicyOperations.java 
ServantRetentionPolicyOperations.java 
ThreadPolicyOperations.java 

Log message:
2005-07-22  Audrius Meskauskas  [EMAIL PROTECTED]

* org/omg/PortableServer/RequestProcessingPolicyOperations.java,
org/omg/PortableServer/ServantRetentionPolicyOperations.java,
org/omg/PortableServer/ThreadPolicyOperations.java,
org/omg/PortableServer/IdAssignmentPolicyOperations.java,
org/omg/PortableServer/IdUniquenessPolicyOperations.java,
org/omg/PortableServer/ImplicitActivationPolicyOperations.java,
org/omg/PortableServer/LifespanPolicyOperations.java:
Inherit from PolicyOperations.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/ChangeLog.diff?tr1=1.4200tr2=1.4201r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/IdAssignmentPolicyOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/IdUniquenessPolicyOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/ImplicitActivationPolicyOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/LifespanPolicyOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/RequestProcessingPolicyOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/ServantRetentionPolicyOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/ThreadPolicyOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text



___
Commit-classpath mailing list
Commit-classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-classpath


[commit-cp] classpath NEWS

2005-07-23 Thread Audrius Me�kauskas
CVSROOT:/cvsroot/classpath
Module name:classpath
Branch: 
Changes by: Audrius Meškauskas [EMAIL PROTECTED]  05/07/23 10:21:15

Modified files:
.  : NEWS 

Log message:
2005-07-23  Audrius Meskauskas  [EMAIL PROTECTED]

NEWS: Added entry about POA.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/NEWS.diff?tr1=1.86tr2=1.87r1=textr2=text



___
Commit-classpath mailing list
Commit-classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-classpath


[commit-cp] classpath java/awt/Component.java ./ChangeLog

2005-07-23 Thread Sven de Marothy
CVSROOT:/cvsroot/classpath
Module name:classpath
Branch: 
Changes by: Sven de Marothy [EMAIL PROTECTED] 05/07/23 15:29:49

Modified files:
java/awt   : Component.java 
.  : ChangeLog 

Log message:
2005-07-23  Sven de Marothy  [EMAIL PROTECTED]

* java/awt/List.java (List): Initialize selected[] to an empty array.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/awt/Component.java.diff?tr1=1.63tr2=1.64r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/ChangeLog.diff?tr1=1.4202tr2=1.4203r1=textr2=text



___
Commit-classpath mailing list
Commit-classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-classpath


[commit-cp] classpath/java/awt List.java

2005-07-23 Thread Sven de Marothy
CVSROOT:/cvsroot/classpath
Module name:classpath
Branch: 
Changes by: Sven de Marothy [EMAIL PROTECTED] 05/07/23 15:47:47

Modified files:
java/awt   : List.java 

Log message:
2005-07-23  Sven de Marothy  [EMAIL PROTECTED]

* java/awt/Component.java: Commited wrong file, reverting.
* java/awt/List.java: The correct file.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/awt/List.java.diff?tr1=1.23tr2=1.24r1=textr2=text



___
Commit-classpath mailing list
Commit-classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-classpath


[commit-cp] classpath ./ChangeLog org/omg/PortableServer/Cu...

2005-07-23 Thread Audrius Me�kauskas
CVSROOT:/cvsroot/classpath
Module name:classpath
Branch: 
Changes by: Audrius Meškauskas [EMAIL PROTECTED]  05/07/23 17:09:52

Modified files:
.  : ChangeLog 
org/omg/PortableServer: CurrentOperations.java 
ServantActivatorOperations.java 
ServantLocatorOperations.java 
Added files:
org/omg/PortableServer: ForwardRequestHelper.java 

Log message:
2005-07-23  Audrius Meskauskas  [EMAIL PROTECTED]

* org/omg/PortableServer/ServantLocatorOperations.java,
org/omg/PortableServer/ServantActivatorOperations.java:
Inherit from ServantManagerOperations.
* org/omg/PortableServer/CurrentOperations.java:
Inherit from org.omg.CORBA.CurrentOperations.
org/omg/PortableServer/ForwardRequestHelper.java: New file.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/ChangeLog.diff?tr1=1.4203tr2=1.4204r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/ForwardRequestHelper.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/CurrentOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/ServantActivatorOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/org/omg/PortableServer/ServantLocatorOperations.java.diff?tr1=1.1tr2=1.2r1=textr2=text



___
Commit-classpath mailing list
Commit-classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-classpath


[commit-cp] classpath ./ChangeLog java/text/AttributedStrin...

2005-07-23 Thread David Gilbert
CVSROOT:/cvsroot/classpath
Module name:classpath
Branch: 
Changes by: David Gilbert [EMAIL PROTECTED]   05/07/23 20:25:15

Modified files:
.  : ChangeLog 
java/text  : AttributedString.java ChoiceFormat.java 
 CollationElementIterator.java CollationKey.java 
 Collator.java DateFormat.java 
 DateFormatSymbols.java 
 DecimalFormatSymbols.java MessageFormat.java 
 NumberFormat.java ParseException.java 
 SimpleDateFormat.java 
 StringCharacterIterator.java 

Log message:
2005-07-23  David Gilbert  [EMAIL PROTECTED]

* java/text/AttributedString.java: API doc fixes,
* java/text/ChoiceFormat.java: likewise,
* java/text/CollationElementIterator.java: likewise,
* java/text/CollationKey.java: likewise,
* java/text/Collator.java: likewise,
* java/text/DateFormat.java: likewise,
* java/text/DateFormatSymbols.java: likewise,
* java/text/DecimalFormatSymbols.java: likewise,
* java/text/MessageFormat.java: likewise,
* java/text/NumberFormat.java: likewise,
* java/text/ParseException.java: likewise,
* java/text/SimpleDateFormat.java: likewise,
* java/text/StringCharacterIterator.java: likewise.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/ChangeLog.diff?tr1=1.4205tr2=1.4206r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/AttributedString.java.diff?tr1=1.11tr2=1.12r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/ChoiceFormat.java.diff?tr1=1.12tr2=1.13r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/CollationElementIterator.java.diff?tr1=1.23tr2=1.24r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/CollationKey.java.diff?tr1=1.14tr2=1.15r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/Collator.java.diff?tr1=1.14tr2=1.15r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/DateFormat.java.diff?tr1=1.20tr2=1.21r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/DateFormatSymbols.java.diff?tr1=1.18tr2=1.19r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/DecimalFormatSymbols.java.diff?tr1=1.19tr2=1.20r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/MessageFormat.java.diff?tr1=1.21tr2=1.22r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/NumberFormat.java.diff?tr1=1.17tr2=1.18r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/ParseException.java.diff?tr1=1.7tr2=1.8r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/SimpleDateFormat.java.diff?tr1=1.48tr2=1.49r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/java/text/StringCharacterIterator.java.diff?tr1=1.9tr2=1.10r1=textr2=text



___
Commit-classpath mailing list
Commit-classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-classpath


[commit-cp] classpath ./ChangeLog javax/swing/ImageIcon.jav...

2005-07-23 Thread David Gilbert
CVSROOT:/cvsroot/classpath
Module name:classpath
Branch: 
Changes by: David Gilbert [EMAIL PROTECTED]   05/07/23 19:47:14

Modified files:
.  : ChangeLog 
javax/swing: ImageIcon.java JLayeredPane.java 
 JSplitPane.java JTree.java JViewport.java 
 RepaintManager.java SizeRequirements.java 
 SortingFocusTraversalPolicy.java 

Log message:
2005-07-23  David Gilbert  [EMAIL PROTECTED]

* javax/swing/ImageIcon.java: API doc fixes,
* javax/swing/JLayeredPane.java: likewise,
* javax/swing/JSplitPane.java: likewise,
* javax/swing/JTree.java: likewise,
* javax/swing/JViewport.java: likewise,
* javax/swing/RepaintManager.java: likewise,
* javax/swing/SizeRequirements.java: likewise,
* javax/swing/SortingFocusTraversalPolicy.java.
--

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/ChangeLog.diff?tr1=1.4204tr2=1.4205r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/ImageIcon.java.diff?tr1=1.16tr2=1.17r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/JLayeredPane.java.diff?tr1=1.24tr2=1.25r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/JSplitPane.java.diff?tr1=1.6tr2=1.7r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/JTree.java.diff?tr1=1.30tr2=1.31r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/JViewport.java.diff?tr1=1.21tr2=1.22r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/RepaintManager.java.diff?tr1=1.12tr2=1.13r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/SizeRequirements.java.diff?tr1=1.9tr2=1.10r1=textr2=text
http://savannah.gnu.org/cgi-bin/viewcvs/classpath/classpath/javax/swing/SortingFocusTraversalPolicy.java.diff?tr1=1.4tr2=1.5r1=textr2=text



___
Commit-classpath mailing list
Commit-classpath@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-classpath