+2003-09-25 Michael Koch <konqueror@gmx.de>
+
+ * gnu/java/nio/SelectorImpl.java
+ (selectNow): Made final, throws IOException.
+ (select): Likewise.
+ (getFDsAsArray): Made final.
+ (selectedKeys): Likewise.
+ (wakeup): Likewise.
+ (deregisterCancelledKeys): Likewise.
+ (register): Likewise.
+ (ass): Removed.
+ (add_selected): Removed.
+ * gnu/java/nio/natSelectorImpl.cc:
+ No need to include bstring.h or gcj/cni.h.
+ (helper_put_filedescriptors): Rewritten.
+ (helper_get_filedescriptors): Rewritten.
+
2003-09-25 Sascha Brawer <brawer@dandelis.ch>
* java/awt/font/FontRenderContext.java (getTransform): Return
return Collections.unmodifiableSet (keys);
}
- public int selectNow ()
+ public final int selectNow()
+ throws IOException
{
return select (1);
}
- public int select ()
+ public final int select()
+ throws IOException
{
return select (-1);
}
private static native int java_do_select (int[] read, int[] write,
int[] except, long timeout);
- private int[] getFDsAsArray (int ops)
+ private final int[] getFDsAsArray (int ops)
{
int[] result;
int counter = 0;
// If key is not yet selected add it.
if (!selected.contains (key))
{
- add_selected (key);
+ selected.add (key);
}
// Set new ready ops
return ret;
}
- public Set selectedKeys ()
+ public final Set selectedKeys()
{
return selected;
}
- public Selector wakeup ()
+ public final Selector wakeup()
{
return null;
}
- public void add (SelectionKeyImpl k)
- {
- keys.add (k);
- }
-
- void add_selected (SelectionKeyImpl k)
- {
- selected.add (k);
- }
-
- private void deregisterCancelledKeys ()
+ private final void deregisterCancelledKeys()
{
Iterator it = cancelledKeys().iterator();
return register ((AbstractSelectableChannel) ch, ops, att);
}
- protected SelectionKey register (AbstractSelectableChannel ch, int ops,
- Object att)
+ protected final SelectionKey register (AbstractSelectableChannel ch, int ops,
+ Object att)
{
SelectionKeyImpl result;
throw new InternalError ("No known channel type");
}
- add (result);
+ keys.add (result);
result.interestOps (ops);
result.attach (att);
return result;
// natSelectorImpl.cc
-/* Copyright (C) 2002 Free Software Foundation
+/* Copyright (C) 2002, 2003 Free Software Foundation
This file is part of libgcj.
#include <errno.h>
#include <string.h>
-#if HAVE_BSTRING_H
-// Needed for bzero, implicitly used by FD_ZERO on IRIX 5.2
-#include <bstring.h>
-#endif
-
-//#include <gcj/cni.h>
#include <gnu/java/nio/SelectorImpl.h>
#include <java/io/IOException.h>
void
-helper_put_filedescriptors (jintArray java_fd_array, fd_set& fds, int& max_fd)
+helper_put_filedescriptors (jintArray fdArray, fd_set& fds, int& max_fd)
{
- int counter;
- jint* java_fds;
-
- java_fds = elements (java_fd_array);
+ jint* tmpFDArray = elements (fdArray);
- for (counter = 0; counter < JvGetArrayLength (java_fd_array); counter++)
+ for (int index = 0; index < JvGetArrayLength (fdArray); index++)
{
- FD_SET (java_fds [counter], &fds);
+ FD_SET (tmpFDArray [index], &fds);
- if (java_fds [counter] > max_fd)
- {
- max_fd = java_fds [counter];
- }
+ if (tmpFDArray [index] > max_fd)
+ max_fd = tmpFDArray [index];
}
}
void
-helper_get_filedescriptors (jintArray& java_fd_array, fd_set fds)
+helper_get_filedescriptors (jintArray& fdArray, fd_set fds)
{
- int counter;
- int counter_fds;
- jint* java_fds;
- jintArray new_array_fds;
- jint* new_data_fds;
-
- counter_fds = 0;
- java_fds = elements (java_fd_array);
-
- for (counter = 0; counter < JvGetArrayLength (java_fd_array); counter++)
- {
- if (FD_ISSET (java_fds[counter], &fds))
- {
- counter_fds++;
- }
- }
-
- new_array_fds = JvNewIntArray (counter_fds);
- new_data_fds = elements (new_array_fds);
-
- for (counter = 0; counter < JvGetArrayLength (java_fd_array); counter++)
- {
- if (FD_ISSET (java_fds[counter], &fds))
- {
- new_data_fds[counter] = java_fds[counter];
- }
- }
-
- java_fd_array = new_array_fds;
+ jint* tmpFDArray = elements (fdArray);
+
+ for (int index = 0; index < JvGetArrayLength (fdArray); index++)
+ if (!FD_ISSET (tmpFDArray [index], &fds))
+ tmpFDArray [index] = 0;
}
jint