--- a/JavaNativeMethodImpl_OpenJDK6.st Fri Feb 14 14:27:26 2014 +0100
+++ b/JavaNativeMethodImpl_OpenJDK6.st Wed Jan 28 03:12:08 2015 +0100
@@ -1,5 +1,5 @@
"
- COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ COPYRIGHT (c) 2010-2015 by Jan Vrany, Jan Kurs and Marcel Hlopko
SWING Research Group, Czech Technical University in Prague
This software is furnished under a license and may be used
@@ -15,14 +15,14 @@
instanceVariableNames:''
classVariableNames:''
poolDictionaries:'JavaVMData'
- category:'Languages-Java-Support-OpenJDK6'
+ category:'Languages-Java-Support-Java 6'
!
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'documentation'!
copyright
"
- COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
+ COPYRIGHT (c) 2010-2015 by Jan Vrany, Jan Kurs and Marcel Hlopko
SWING Research Group, Czech Technical University in Prague
This software is furnished under a license and may be used
@@ -739,7 +739,7 @@
file isNil ifTrue:[
JavaVM
- throwIOExceptionWithMessage:('stream with file descriptor %1 closed or was never open'
+ throwIOExceptionWithMessage:('stream with file descriptor %1 closed or was never open'
bindWith:fileNo).
^ nil
].
@@ -840,7 +840,7 @@
^nil.
].
- "Possibly box/unbox arguments"
+ "/ Possibly box/unbox arguments
args notEmptyOrNil ifTrue:[
bargs := Array new: (bargss := method numArgs).
bi := 1.
@@ -897,13 +897,48 @@
].
].
+ "/ Apparently, invocation of interface method initializes the class,
+ "/ so check whether the method is an interface one and if so, initialize
+ "/ the interface...
+ (isConstructor not and:[method isStatic not and:[method javaClass interfaces notEmpty]]) ifTrue:[
+ | selector ifacesQ ifacesSeen |
+
+ selector := method selector.
+ ifacesQ := OrderedCollection with: (method javaClass interfaces).
+ ifacesSeen := Set new.
+ [ ifacesQ notEmpty ] whileTrue:[
+ | ifaces newIfaces m |
+
+ ifaces := ifacesQ removeFirst.
+ ifaces do:[:iface |
+ (ifacesSeen includes: iface) ifFalse:[
+ ifacesSeen add: iface.
+ m := iface compiledMethodAt: selector.
+ m notNil ifTrue:[
+ "/ OK, it's an interface method, initialize the class
+ m javaClass classInit.
+ ].
+ ].
+ ].
+ m isNil ifTrue:[
+ newIfaces := Set new.
+ ifaces do:[:iface| newIfaces addAll: iface interfaces ].
+ newIfaces notEmpty ifTrue:[
+ ifacesQ add: newIfaces.
+ ].
+ ] ifFalse:[
+ "/ It's an inteface method, so clear the queue to terminate the loop.
+ ifacesQ := #()
+ ].
+ ]
+ ].
+
+
"Fire the method"
[
- method isStatic ifTrue:[
- retval := method valueWithReceiver: method javaClass arguments: bargs.
- ] ifFalse:[
- retval := method valueWithReceiver: obj arguments: bargs.
- ].
+ retval := method isStatic
+ ifTrue:[ method valueWithReceiver: method javaClass arguments: bargs ]
+ ifFalse:[ method valueWithReceiver: obj arguments: bargs ].
] on: (JavaVM classForName:'java.lang.Throwable' definedBy:nil) do:[:ex |
executionEx := ex.
].
@@ -924,7 +959,7 @@
^retval.
"Created: / 05-07-2012 / 23:48:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 30-01-2013 / 14:00:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 11-11-2013 / 21:30:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'helpers - zip'!
@@ -3135,15 +3170,15 @@
|path|
- "/ mhmh - what is done here ?
-
+ "/ build a colon-separated string
path := ''.
- LibPath do:[:comp | path size == 0 ifTrue:[
- path := path , comp
- ] ifFalse:[
- path := path , ':' , comp
- ]
- ].
+ LibPath do:[:comp |
+ path size == 0 ifTrue:[
+ path := path , comp
+ ] ifFalse:[
+ path := path , ':' , comp
+ ]
+ ].
^ Java as_String:path
@@ -3732,14 +3767,15 @@
nextPutAll:' [';
nextPutAll:(con method javaClass sourceFile);
nextPutAll:' ';
- nextPutAll:(con quickLineNumber displayString);
+ nextPutAll:(con lineNumber displayString);
nextPutAll:']'.
out cr
].
out nextPutLine:'----------------------------------------------------'
- "Created: / 4.1.1998 / 14:27:40 / cg"
- "Modified: / 10.11.1998 / 14:19:32 / cg"
+ "Created: / 04-01-1998 / 14:27:40 / cg"
+ "Modified: / 10-11-1998 / 14:19:32 / cg"
+ "Modified: / 11-09-2013 / 03:09:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_URLConnection_close: nativeContext
@@ -4749,7 +4785,7 @@
].
stFont device isNil ifTrue:[
- stFont := stFont on:Screen current.
+ stFont := stFont on:Display.
jFont instVarNamed:'pData' put:stFont.
].
w := stFont widthOf:cp from:offs+1 to:offs+lenght.
@@ -4778,14 +4814,14 @@
stFont isNil ifTrue:[
stFont := Font family:'helvetica' size:size.
].
- stFont := stFont on:Screen current.
+ stFont := stFont on:Display.
self halt.
"/ stFont := jFont instVarNamed:'pData'.
"/ stFont isNil ifTrue:[
"/ self halt
"/ ].
- stFont := stFont on:Screen current.
+ stFont := stFont on:Display.
jFont instVarNamed:'pData' put:stFont.
jMetrics instVarNamed:'ascent' put:stFont ascent.
@@ -6601,7 +6637,8 @@
"get multi-font string-segment width.
Not yet supported - use standard strings width"
- |jMetrics jFont jFontDescr stFont w cp lenght|
+ |jMetrics jFont jFontDescr stFont w
+ bool1 cp offs lenght bp int1|
jMetrics := nativeContext receiver.
jFont := nativeContext argAt:1.
@@ -6615,7 +6652,7 @@
].
stFont device isNil ifTrue:[
- stFont := stFont on:Screen current.
+ stFont := stFont on:Display.
jFont instVarNamed:'pData' put:stFont.
].
w := stFont widthOf:cp from:1 to:lenght.
@@ -6797,6 +6834,13 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_com_sun_imageio_plugins_jpeg_JPEGImageReader_setSource: this _: a1 _: a2
+
+ <javanative: 'com/sun/imageio/plugins/jpeg/JPEGImageReader' name: 'setSource(J)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_com_sun_imageio_plugins_jpeg_JPEGImageReader_setSource: this _: a1 _: a2 _: a3
<javanative: 'com/sun/imageio/plugins/jpeg/JPEGImageReader' name: 'setSource(JLjavax/imageio/stream/ImageInputStream;)V'>
@@ -6825,6 +6869,13 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_com_sun_imageio_plugins_jpeg_JPEGImageWriter_initWriterIDs: this _: a1 _: a2
+
+ <javanative: 'com/sun/imageio/plugins/jpeg/JPEGImageWriter' name: 'initWriterIDs(Ljava/lang/Class;Ljava/lang/Class;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_com_sun_imageio_plugins_jpeg_JPEGImageWriter_initWriterIDs: this _: a1 _: a2 _: a3
<javanative: 'com/sun/imageio/plugins/jpeg/JPEGImageWriter' name: 'initWriterIDs(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)V'>
@@ -6839,6 +6890,13 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_com_sun_imageio_plugins_jpeg_JPEGImageWriter_setDest: this _: a1 _: a2
+
+ <javanative: 'com/sun/imageio/plugins/jpeg/JPEGImageWriter' name: 'setDest(J)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_com_sun_imageio_plugins_jpeg_JPEGImageWriter_setDest: this _: a1 _: a2 _: a3
<javanative: 'com/sun/imageio/plugins/jpeg/JPEGImageWriter' name: 'setDest(JLjavax/imageio/stream/ImageOutputStream;)V'>
@@ -8275,12 +8333,12 @@
^ (JavaVM classForName:'java.io.UnixFileSystem' definedBy:nil) new
].
OperatingSystem isMSWINDOWSlike ifTrue: [
- ^ (Java classForName: 'java.io.WinNTFileSystem') new
+ ^ (JavaVM classForName: 'java.io.WinNTFileSystem' definedBy: nil) new
].
self error: 'Unknown/Unsupported platform'
"Created: / 09-12-2010 / 17:58:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 01-04-2011 / 18:09:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 18-05-2013 / 10:58:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_ObjectInputStream_bytesToDoubles: this _: a1 _: a2 _: a3 _: a4
@@ -8432,7 +8490,7 @@
].
^file position
- "Modified: / 06-07-2012 / 12:40:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-11-2013 / 11:10:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_RandomAccessFile_initIDs: this
@@ -8448,7 +8506,7 @@
<javanative: 'java/io/RandomAccessFile' name: 'length()J'>
- |file sz|
+ | file sz |
file := self validateFile:this.
@@ -8456,10 +8514,12 @@
('JAVA: length of ' , file pathName) infoPrintCR.
].
- sz := file size.
+ file flush.
+ sz := file fileSize.
^ sz.
- "Created: / 4.2.1998 / 13:27:58 / cg"
+ "Created: / 04-02-1998 / 13:27:58 / cg"
+ "Modified (format): / 13-11-2013 / 10:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_RandomAccessFile_open: this _:a1 _: a2
@@ -8496,6 +8556,11 @@
dir := (filename := nm utf8Encoded asFilename) directory pathName.
+ filename isDirectory ifTrue:[
+ JavaVM throwFileNotFoundException: nm , ' is directory, not file'.
+ ^ nil.
+ ].
+
(PermittedDirectories notNil
and:[PermittedDirectories includes:dir]) ifFalse:[
FileOpenConfirmation ifTrue:[
@@ -8524,7 +8589,8 @@
].
(filename exists not and:[readonly]) ifTrue:[
- JavaVM throwIOExceptionWithMessage:'File ' , nm , ' does not exist'
+ JavaVM throwIOExceptionWithMessage:'File ' , nm , ' does not exist'.
+ ^ nil.
].
readonly ifTrue:[
@@ -8535,6 +8601,7 @@
JavaVM throwIOExceptionWithMessage:('cannot open ' , nm , ' for writing').
].
].
+ stream binary.
fileNo := self addOpenFile:stream.
@@ -8549,7 +8616,7 @@
"Created: / 04-02-1998 / 00:14:48 / cg"
"Modified: / 12-11-1998 / 21:29:46 / cg"
- "Modified: / 23-07-2012 / 19:37:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-11-2013 / 11:07:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_RandomAccessFile_read: this
@@ -8602,18 +8669,57 @@
"Modified (comment): / 06-07-2012 / 12:39:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-_java_io_RandomAccessFile_setLength: this _: a1 _: a2
+_java_io_RandomAccessFile_setLength: this _: newLength _: ignored
<javanative: 'java/io/RandomAccessFile' name: 'setLength(J)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+ "
+ /**
+ * Sets the length of this file.
+ *
+ * <p> If the present length of the file as returned by the
+ * <code>length</code> method is greater than the <code>newLength</code>
+ * argument then the file will be truncated. In this case, if the file
+ * offset as returned by the <code>getFilePointer</code> method is greater
+ * than <code>newLength</code> then after this method returns the offset
+ * will be equal to <code>newLength</code>.
+ *
+ * <p> If the present length of the file as returned by the
+ * <code>length</code> method is smaller than the <code>newLength</code>
+ * argument then the file will be extended. In this case, the contents of
+ * the extended portion of the file are not defined.
+ *
+ * @param newLength The desired length of the file
+ * @exception IOException If an I/O error occurs
+ * @since 1.2
+ */
+ "
+
+ | file sz |
+
+ file := self validateFile:this.
+
+ FileIOTrace ifTrue:[
+ ('JAVA: length of ' , file pathName) infoPrintCR.
+ ].
+
+ file flush.
+ sz := file fileSize.
+ file truncateTo: newLength .
+ sz > newLength ifTrue:[
+ file position0Based: newLength.
+ ].
+ ^ sz.
+
+ "Modified: / 13-11-2013 / 11:10:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_RandomAccessFile_write: this _: a1
<javanative: 'java/io/RandomAccessFile' name: 'write(I)V'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ ^ self _java_io_FileOutputStream_write: this _:a1
+
+ "Modified: / 13-11-2013 / 11:03:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_RandomAccessFile_writeBytes: this _:bytes _: offset _: count
@@ -8685,6 +8791,25 @@
"Modified: / 05-12-2011 / 23:04:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+_java_io_UnixFileSystem_createFileExclusively: this _: name
+
+ <javanative: 'java/io/UnixFileSystem' name: 'createFileExclusively(Ljava/lang/String;)Z'>
+
+ | path file result |
+
+ path := Java as_ST_String: name.
+ [
+ file := FileStream basicNew.
+ result := (file openFile: path withMode: #(CREATE_NEW GENERIC_READ_WRITE) attributes: nil) notNil ifTrue:[1] ifFalse:[0].
+ file close.
+ ] on: OpenError do:[
+ result := 0.
+ ].
+ ^ result.
+
+ "Modified: / 12-11-2013 / 23:52:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
_java_io_UnixFileSystem_createFileExclusively: this _:a1 _: a2
<javanative: 'java/io/UnixFileSystem' name: 'createFileExclusively(Ljava/lang/String;Z)Z'>
@@ -8956,6 +9081,114 @@
"Modified: / 10-08-2011 / 13:40:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+_java_io_Win32FileSystem_canonicalize0: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'canonicalize0(Ljava/lang/String;)Ljava/lang/String;'>
+
+ ^ self _java_io_WinNTFileSystem_canonicalize0: this _: a1
+
+ "Modified: / 11-11-2013 / 22:00:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_canonicalizeWithPrefix0: this _: a1 _: a2
+
+ <javanative: 'java/io/Win32FileSystem' name: 'canonicalizeWithPrefix0(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;'>
+
+ ^ self _java_io_WinNTFileSystem_canonicalizeWithPrefix0: this _: a1 _: a2
+
+ "Modified: / 11-11-2013 / 22:01:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_checkAccess: this _: a1 _: a2
+
+ <javanative: 'java/io/Win32FileSystem' name: 'checkAccess(Ljava/io/File;I)Z'>
+
+ ^ self _java_io_WinNTFileSystem_checkAccess: this _: a1 _: a2
+
+ "Modified: / 11-11-2013 / 22:01:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_createDirectory: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'createDirectory(Ljava/io/File;)Z'>
+
+ ^ self _java_io_WinNTFileSystem_createDirectory: this _: a1
+
+ "Modified: / 11-11-2013 / 22:01:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_createFileExclusively: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'createFileExclusively(Ljava/lang/String;)Z'>
+
+ ^ self _java_io_WinNTFileSystem_createFileExclusively: this _: a1
+
+ "Modified: / 11-11-2013 / 22:01:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_createFileExclusively: this _: a1 _: a2
+
+ <javanative: 'java/io/Win32FileSystem' name: 'createFileExclusively(Ljava/lang/String;Z)Z'>
+
+ ^ self _java_io_WinNTFileSystem_createFileExclusively: this _: a1 _: a2
+
+ "Modified: / 12-02-2014 / 10:51:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_delete0: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'delete0(Ljava/io/File;)Z'>
+
+ ^ self _java_io_WinNTFileSystem_delete0: this _: a1
+
+ "Modified: / 11-02-2014 / 18:30:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_getBooleanAttributes: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'getBooleanAttributes(Ljava/io/File;)I'>
+
+ ^ self _java_io_WinNTFileSystem_getBooleanAttributes: this _: a1
+
+ "Modified: / 11-02-2014 / 18:30:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_getDriveDirectory: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'getDriveDirectory(I)Ljava/lang/String;'>
+
+ ^ self _java_io_WinNTFileSystem_getDriveDirectory: this _: a1
+
+ "Modified: / 11-02-2014 / 18:30:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_getLastModifiedTime: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'getLastModifiedTime(Ljava/io/File;)J'>
+
+ ^ self _java_io_WinNTFileSystem_getLastModifiedTime: this _: a1
+
+ "Modified: / 11-02-2014 / 18:30:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_getLength: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'getLength(Ljava/io/File;)J'>
+
+ ^ self _java_io_WinNTFileSystem_getLength: this _: a1
+
+ "Modified: / 11-02-2014 / 18:30:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_getSpace0: this _: a1 _: a2
+
+ <javanative: 'java/io/Win32FileSystem' name: 'getSpace0(Ljava/io/File;I)J'>
+
+ ^ self _java_io_WinNTFileSystem_getSpace0: this _: a1 _: a2
+
+ "Modified: / 11-02-2014 / 18:30:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
_java_io_Win32FileSystem_initIDs: this
<javanative: 'java/io/Win32FileSystem' name: 'initIDs()V'>
@@ -8963,6 +9196,71 @@
"Intentionally left blank"
!
+_java_io_Win32FileSystem_list: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'list(Ljava/io/File;)[Ljava/lang/String;'>
+
+ ^ self _java_io_WinNTFileSystem_list: this _: a1
+
+ "Modified: / 11-02-2014 / 18:30:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_listRoots0: this
+
+ <javanative: 'java/io/Win32FileSystem' name: 'listRoots0()I'>
+
+ | driveMask codePointA |
+
+ driveMask := 0.
+ codePointA := $A codePoint.
+ OperatingSystem getDriveList do:[:each |
+ driveMask := driveMask | (1 << (each first codePoint - codePointA))
+ ].
+ ^driveMask
+
+ "
+ self _java_io_Win32FileSystem_listRoots0: nil.
+ "
+
+ "Modified: / 12-02-2014 / 10:45:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_rename0: this _: a1 _: a2
+
+ <javanative: 'java/io/Win32FileSystem' name: 'rename0(Ljava/io/File;Ljava/io/File;)Z'>
+
+ ^ self _java_io_WinNTFileSystem_rename0: this _: a1 _: a2
+
+ "Modified: / 11-02-2014 / 18:31:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_setLastModifiedTime: this _: a1 _: a2 _: a3
+
+ <javanative: 'java/io/Win32FileSystem' name: 'setLastModifiedTime(Ljava/io/File;J)Z'>
+
+ ^ self _java_io_WinNTFileSystem_setLastModifiedTime: this _: a1 _: a2 _: a3
+
+ "Modified: / 11-02-2014 / 18:31:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_setPermission: this _: a1 _: a2 _: a3 _: a4
+
+ <javanative: 'java/io/Win32FileSystem' name: 'setPermission(Ljava/io/File;IZZ)Z'>
+
+ ^ self _java_io_WinNTFileSystem_setPermission: this _: a1 _: a2 _: a3 _: a4
+
+ "Modified: / 11-02-2014 / 18:31:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_Win32FileSystem_setReadOnly: this _: a1
+
+ <javanative: 'java/io/Win32FileSystem' name: 'setReadOnly(Ljava/io/File;)Z'>
+
+ ^ self _java_io_WinNTFileSystem_setReadOnly: this _: a1
+
+ "Modified: / 11-02-2014 / 18:31:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
_java_io_WinNTFileSystem_canonicalize0: this _:a1
<javanative: 'java/io/WinNTFileSystem' name: 'canonicalize0(Ljava/lang/String;)Ljava/lang/String;'>
@@ -8998,31 +9296,56 @@
<javanative: 'java/io/WinNTFileSystem' name: 'checkAccess(Ljava/io/File;I)Z'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ ^ self _java_io_UnixFileSystem_checkAccess: this _:a1 _: a2
+
+ "Modified: / 12-02-2014 / 09:39:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_WinNTFileSystem_createDirectory: this _:a1
<javanative: 'java/io/WinNTFileSystem' name: 'createDirectory(Ljava/io/File;)Z'>
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_io_WinNTFileSystem_createFileExclusively: this _:a1
+ ^ self _java_io_UnixFileSystem_createDirectory: this _:a1
+
+ "Modified: / 12-02-2014 / 09:39:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_WinNTFileSystem_createFileExclusively: this _: name
<javanative: 'java/io/WinNTFileSystem' name: 'createFileExclusively(Ljava/lang/String;)Z'>
- ^ self _java_io_UnixFileSystem_createFileExclusively: this _:a1
+ | path file result |
+
+ path := Java as_ST_String: name.
+ [
+ file := FileStream basicNew.
+ result := (file openFile: path withMode: #(GENERIC_READ_WRITE FILE_SHARE_READ FILE_SHARE_WRITE CREATE_NEW) attributes: nil) notNil ifTrue:[1] ifFalse:[0].
+ file close.
+ ] on: OpenError do:[
+ result := 0.
+ ].
+ ^ result.
"Modified: / 18-08-2011 / 17:26:11 / jv"
- "Modified: / 30-01-2013 / 14:17:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 12-11-2013 / 23:52:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_WinNTFileSystem_createFileExclusively: this _: a1 _: a2
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'createFileExclusively(Ljava/lang/String;Z)Z'>
+
+ ^self _java_io_UnixFileSystem_createFileExclusively: this _: a1 _: a2
+
+ "Modified: / 12-02-2014 / 09:59:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_WinNTFileSystem_delete0: this _:a1
<javanative: 'java/io/WinNTFileSystem' name: 'delete0(Ljava/io/File;)Z'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ ^ self _java_io_UnixFileSystem_delete0: this _:a1
+
+ "Modified: / 12-02-2014 / 09:39:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_io_WinNTFileSystem_getBooleanAttributes: this _:a1
@@ -9035,6 +9358,13 @@
"Modified: / 30-01-2013 / 14:17:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+_java_io_WinNTFileSystem_getDriveDirectory: this _: a1
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'getDriveDirectory(I)Ljava/lang/String;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_java_io_WinNTFileSystem_getLastModifiedTime: this _:a1
<javanative: 'java/io/WinNTFileSystem' name: 'getLastModifiedTime(Ljava/io/File;)J'>
@@ -9055,6 +9385,22 @@
"Modified: / 30-01-2013 / 14:17:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+_java_io_WinNTFileSystem_getSpace0: this _: a1 _: a2
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'getSpace0(Ljava/io/File;I)J'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_java_io_WinNTFileSystem_initIDs: this
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'initIDs()V'>
+
+ ^ self _java_io_UnixFileSystem_initIDs: this
+
+ "Modified: / 11-02-2014 / 19:54:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
_java_io_WinNTFileSystem_list: this _:a1
<javanative: 'java/io/WinNTFileSystem' name: 'list(Ljava/io/File;)[Ljava/lang/String;'>
@@ -9063,6 +9409,42 @@
"Modified: / 01-09-2011 / 21:46:37 / jv"
"Modified: / 30-01-2013 / 14:17:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_WinNTFileSystem_rename0: this _: a1 _: a2
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'rename0(Ljava/io/File;Ljava/io/File;)Z'>
+
+ ^ self _java_io_UnixFileSystem_rename0: this _: a1 _: a2
+
+ "Modified (format): / 11-02-2014 / 20:09:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_WinNTFileSystem_setLastModifiedTime: this _: a1 _: a2 _: a3
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'setLastModifiedTime(Ljava/io/File;J)Z'>
+
+ ^ self _java_io_UnixFileSystem_setLastModifiedTime: this _: a1 _: a2 _: a3
+
+ "Modified: / 03-02-2014 / 09:16:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_WinNTFileSystem_setPermission: this _: a1 _: a2 _: a3 _: a4
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'setPermission(Ljava/io/File;IZZ)Z'>
+
+ ^ self _java_io_UnixFileSystem_setPermission: this _: a1 _: a2 _: a3 _: a4
+
+ "Modified: / 11-02-2014 / 19:56:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_io_WinNTFileSystem_setReadOnly: this _: a1
+
+ <javanative: 'java/io/WinNTFileSystem' name: 'setReadOnly(Ljava/io/File;)Z'>
+
+ ^ self _java_io_UnixFileSystem_setReadOnly: this _: a1
+
+ "Modified: / 11-02-2014 / 19:56:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - java.lang'!
@@ -9091,8 +9473,10 @@
jLibName := a1.
libName := (Java as_ST_String: jLibName) asFilename baseName.
(index := SimulatedNativeLibs indexOf: libName) ~~ 0 ifTrue: [
- "/ ('JAVA: builtIn nativeLibLoad simulated: ' , libName) printNL.
- nativeLoader instVarNamed: 'handle' put: index.
+ "/ Do not load pkcs11.so/dll - this is not supported yet
+ (libName ~= 'libj2pkcs11.so' and:[libName ~= 'j2pkcs11.dll']) ifTrue:[
+ nativeLoader instVarNamed: 'handle' put: index.
+ ].
^ self
"/ void
].
@@ -9126,6 +9510,7 @@
"Modified: / 06-02-1998 / 03:12:17 / cg"
"Created: / 10-12-2010 / 15:11:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 03-11-2011 / 18:25:08 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+ "Modified: / 23-09-2013 / 23:21:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_ClassLoader_NativeLibrary_unload: this
@@ -9149,13 +9534,34 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_java_lang_ClassLoader_defineClass0: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6
+
+ <javanative: 'java/lang/ClassLoader' name: 'defineClass0(Ljava/lang/String;[BIILjava/security/ProtectionDomain;Z)Ljava/lang/Class;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_java_lang_ClassLoader_defineClass1: this _:a1 _: a2 _: a3 _: a4 _: a5 _: a6
<javanative: 'java/lang/ClassLoader' name: 'defineClass1(Ljava/lang/String;[BIILjava/security/ProtectionDomain;Ljava/lang/String;)Ljava/lang/Class;'>
"
private native Class defineClass1(String name, byte[] b, int off, int len,
ProtectionDomain pd, String source);"
- | className b off len pd bs cls |
+ ^ self
+ _java_lang_ClassLoader_defineClass1: this _:a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: 1"verify"
+
+ "Modified: / 22-04-2014 / 22:32:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_lang_ClassLoader_defineClass1: this _:a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: verify
+ <javanative: 'java/lang/ClassLoader' name: 'defineClass1(Ljava/lang/String;[BIILjava/security/ProtectionDomain;Ljava/lang/String;Z)Ljava/lang/Class;'>
+ "
+ private native Class defineClass1(String name, byte[] b, int off, int len,
+ ProtectionDomain pd, String source,
+ Boolean verify);"
+
+ | className b off len pd bs cls |
+
className := Java as_ST_String: a1.
cls := nil.
b := a2.
@@ -9164,6 +9570,7 @@
len := a4.
pd := a5.
"/source := Java as_ST_String: a6.
+
bs := (off = 0 and: [ len = b size ])
ifTrue: [ b readStream ]
ifFalse: [ bs := (b copyFrom: off + 1 to: off + len) readStream ].
@@ -9176,7 +9583,7 @@
"if name starts with java.* or package is signed by something else and we are not signed, throw security exception"
"ClassLoadersTest>>testEyeOpeningClassLoaderLoadObject"
"18.11. mh revised - they really test it against java., totally ignoring boot class path.. That surpsised me"
- (cls name startsWith: 'java/') ifTrue: [
+ (cls binaryName startsWith: 'java/') ifTrue: [
JavaVM throwSecurityExceptionWith:'className=' , cls name
].
self assert: cls classLoader == this.
@@ -9188,7 +9595,7 @@
"Modified: / 08-12-2011 / 20:56:51 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
"Modified: / 10-09-2012 / 22:21:22 / m"
- "Modified: / 02-05-2013 / 10:00:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 22-04-2014 / 22:32:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_ClassLoader_defineClass2: this _: a1 _: a2 _: a3 _: a4 _: a5
@@ -9205,6 +9612,13 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_java_lang_ClassLoader_defineClass2: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+
+ <javanative: 'java/lang/ClassLoader' name: 'defineClass2(Ljava/lang/String;Ljava/nio/ByteBuffer;IILjava/security/ProtectionDomain;Ljava/lang/String;Z)Ljava/lang/Class;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_java_lang_ClassLoader_findBootstrapClass: this _:a1
<javanative: 'java/lang/ClassLoader' name: 'findBootstrapClass(Ljava/lang/String;)Ljava/lang/Class;'>
"Return class loaded by bootstrap (primordial) classloader or null.
@@ -9215,14 +9629,14 @@
class := ClassRegistry
classForName: nm asSlashedJavaClassName
loader: nil
- ifAbsentPut: [ class := JavaVM usePrimordialCLToLoadClassNamed: nm. ].
+ ifAbsentPut: [ class := JavaVM loadClassNamed: nm usingClassLoader: nil ].
^ class notNil
ifTrue: [ Reflection javaClassObjectForClass: class ]
ifFalse: [ JavaVM throwClassNotFoundException:nm ].
- "Modified: / 30-10-2011 / 21:45:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 02-11-2011 / 20:13:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+ "Modified: / 14-09-2013 / 23:13:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_ClassLoader_findLoadedClass0: this _:a1
@@ -9331,51 +9745,97 @@
"Created: / 24-11-2010 / 08:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-_java_lang_Class_forName0: this _:a1 _: a2 _: a3
+_java_lang_Class_forName0: this _: classname _: initialize _: loader
<javanative: 'java/lang/Class' name: 'forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;'>
- |nm initialize loader class descriptor|
-
- nm := Java as_ST_String:a1.
- "Using Class.forName() to get a primitive type is not allowed"
+
+ | nm nmAsJavaString dim class classObject |
+
+ nmAsJavaString := classname.
+ nm := Java as_ST_String:classname.
+ "/ Using Class.forName() to get a primitive type is not allowed"
(nm size == 1 and:[JavaDescriptor baseTypes includesKey:nm first]) ifTrue:[
^ JavaVM throwClassNotFoundException:nm.
].
(JavaDescriptor baseTypesByTypeName includesKey:nm) ifTrue:[
^ JavaVM throwClassNotFoundException:nm.
].
- initialize := a2.
- loader := a3.
-
- (nm first == $[) ifTrue:[
- JavaClassReader classLoaderQuerySignal answer:loader do:[
- |nms|
-
- nms := nm readStream.
- descriptor := JavaDescriptor readFrom:nms
- onError:[^ JavaVM throwClassNotFoundException:nm].
- nms atEnd ifFalse:[
- ^ JavaVM throwClassNotFoundException:nm
- ].
- class := descriptor javaClass.
- ].
- ] ifFalse:[
- class := JavaVM classForName:nm definedBy: loader.
- ].
-
-
- class isNil ifTrue:[
- ^ JavaVM throwClassNotFoundException:nm
- ].
- ((initialize ~~ 0)
- and:[class isJavaArrayClass not and:[class isJavaPrimitiveType not]])
+
+ "/ Could be array type, check and compute dimension\
+ dim := 0.
+ [ dim < nm size and:[(nm at: dim + 1) == $[] ] whileTrue:[ dim := dim + 1 ].
+ "/ Check for malformed class name (like "[[[")
+ dim = nm size ifTrue:[
+ JavaVM throwClassNotFoundException:nm.
+ ^ nil
+ ].
+ dim > 0 ifTrue:[
+ (nm at: dim + 1) == $L ifTrue:[
+ "/ Reference type array...
+ nm last ~~ $; ifTrue:[
+ JavaVM throwClassNotFoundException:nm.
+ ^ nil
+ ].
+ (dim + 2) >= (nm size - 1) ifTrue:[
+ JavaVM throwClassNotFoundException:nm.
+ ^ nil
+ ].
+ nm := nm copyFrom: dim + 2 to: nm size - 1.
+ nmAsJavaString := Java as_String: nm.
+ ] ifFalse:[
+ "/ Primitive type array
+ nm size ~~ (dim + 1) ifTrue:[
+ JavaVM throwClassNotFoundException:nm.
+ ^ nil
+ ].
+ class := JavaDescriptor baseTypes at: nm last ifAbsent:[
+ JavaVM throwClassNotFoundException:nm.
+ ^ nil
+ ].
+ dim timesRepeat: [ class := class javaArrayClass ].
+ ^ JavaVM javaClassObjectForClass:class.
+ ].
+ ].
+
+ loader isNil ifTrue:[
+ "/OK. return class loaded by primordial class loader
+
+ class := JavaVM classForName: nm definedBy: nil.
+ class isNil ifTrue:[ ^ JavaVM throwClassNotFoundException:nm ].
+ ((initialize ~~ 0)
+ and:[class isJavaArrayClass not
+ and:[class isJavaPrimitiveType not]])
ifTrue:[
- [class classInit] on:Error do:[self throwExceptionInInitializerError:nm]
+ "/JV: Should be removed/rewieved once bug #47 is closed.
+ [ class classInit ] on: Error do:[ self throwExceptionInInitializerError:nm ]
].
- ^ JavaVM javaClassObjectForClass:class.
+ dim timesRepeat: [ class := class javaArrayClass ].
+ classObject := JavaVM javaClassObjectForClass:class.
+ ] ifFalse:[
+ "/ Custom class loader, call loadClass(String, boolean)...
+ classObject := loader
+ perform:#'loadClass(Ljava/lang/String;Z)Ljava/lang/Class;'
+ with: nmAsJavaString
+ with: initialize.
+ dim > 0 ifTrue:[
+ class := JavaVM classForJavaClassObject:classObject.
+ dim timesRepeat: [ class := class javaArrayClass ].
+ classObject := JavaVM javaClassObjectForClass:class.
+ ].
+ ].
+ ^ classObject
"Created: / 24-11-2010 / 09:03:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 02-11-2011 / 19:12:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
- "Modified: / 07-05-2013 / 12:18:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 08-11-2013 / 23:02:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_lang_Class_forName0: this _: classname _: initialize _: loader _: caller
+
+ <javanative: 'java/lang/Class' name: 'forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class;'>
+
+ ^ self _java_lang_Class_forName0: this _: classname _: initialize _: loader
+
+ "Modified: / 04-11-2014 / 09:16:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_getClassLoader0: this
@@ -9399,15 +9859,14 @@
|cls|
cls := Reflection classForJavaClassObject:this.
- cls isJavaPrimitiveType ifTrue:[
- self breakPoint:#jv.
- ^ nil
- ].
- ^ Reflection javaClassObjectForClass:cls javaComponentClass
+ cls isJavaArrayClass ifTrue:[
+ ^ Reflection javaClassObjectForClass:cls javaComponentClass
+ ].
+ ^ nil
"Created: / 12-11-1998 / 18:54:46 / cg"
- "Modified: / 20-12-2010 / 22:56:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 28-01-2011 / 15:18:59 / Marcel Hlopko <hlopik@gmail.com>"
+ "Modified: / 08-11-2013 / 23:05:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_getConstantPool: this
@@ -9432,18 +9891,13 @@
<javanative: 'java/lang/Class' name: 'getDeclaredClasses0()[Ljava/lang/Class;'>
- | class innerPrefix inners |
+ | class inners |
class := Reflection classForJavaClassObject: this.
- innerPrefix := class name , '$'.
- inners := Set new.
- JAVA allClassesDo:[:cls|
- ((cls name startsWith: innerPrefix) and:[(cls name indexOf: $$ startingAt: innerPrefix size) == 0]) ifTrue:[
- inners add: (Reflection javaClassObjectForClass: cls)
- ].
- ].
- ^(Java at: 'java.lang.Class') javaArrayClass withAll: inners
+ inners := class innerClasses.
+ ^inners collect: [:cls | Reflection javaClassObjectForClass: cls] as: (Java at: 'java.lang.Class') javaArrayClass
"Created: / 19-01-2013 / 23:41:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 13-08-2014 / 17:00:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_getDeclaredConstructors0: this _:a1
@@ -9494,8 +9948,8 @@
"Modified: / 01-08-2012 / 11:15:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-_java_lang_Class_getDeclaringClass: this
- <javanative: 'java/lang/Class' name: 'getDeclaringClass()Ljava/lang/Class;'>
+_java_lang_Class_getDeclaringClass0: this
+ <javanative: 'java/lang/Class' name: 'getDeclaringClass0()Ljava/lang/Class;'>
"
/**
* If the class or interface represented by this {@code Class} object
@@ -9509,26 +9963,55 @@
* @since JDK1.1
*/"
- | cls enclosingClsName enclosingCls |
+ | cls declaringClass |
cls := Reflection classForJavaClassObject: this.
(cls isJavaPrimitiveType or: [ cls isJavaArrayClass ]) ifTrue: [ ^ nil ].
- (cls name includes: $$) ifFalse: [ ^ nil ].
- enclosingClsName := cls name copyTo: (cls name lastIndexOf: $$) - 1.
- enclosingCls := JavaVM classForName:enclosingClsName definedBy:nil.
- enclosingCls isNil ifTrue: [ self error: 'Cannot fins declaring class' ].
- ^ Reflection javaClassObjectForClass: enclosingCls
-
- "Modified: / 13-08-2011 / 02:01:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ declaringClass := cls declaringClass.
+ declaringClass notNil ifTrue:[
+ ^ Reflection javaClassObjectForClass: declaringClass
+ ].
+ ^ nil
+
+ "Modified: / 04-08-2014 / 22:54:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_lang_Class_getDeclaringClass: this
+ <javanative: 'java/lang/Class' name: 'getDeclaringClass()Ljava/lang/Class;'>
+
+ ^ self _java_lang_Class_getDeclaringClass0: this
+
+ "Modified: / 04-08-2014 / 22:39:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_getEnclosingMethod0: this
<javanative: 'java/lang/Class' name: 'getEnclosingMethod0()[Ljava/lang/Object;'>
- ^nil "/Not true"
-
- "Modified: / 14-08-2011 / 20:05:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Returns an Object[3]:
+ info[0] = enclosing class as Class
+ ifno[1] = enclosing method name as String
+ info[2] = enclosing method descriptor as String
+
+ or nil if there's no enclosing method attribute.
+ "
+
+ | cls attr info|
+
+ info := nil.
+ cls := JavaVM reflection classForJavaClassObject: this.
+ attr := cls getAttribute: #EnclosingMethod.
+ attr notNil ifTrue:[
+ info := _java_lang_Object_CLASS javaArrayClass new: 3.
+ info at: 1 put: (JavaVM reflection javaClassObjectForClass: ((cls constantPool at: attr first) resolve: false)).
+ attr second ~~ 0 ifTrue:[
+ info at: 2 put: (Java as_String: (cls constantPool at: attr second) name).
+ info at: 3 put: (Java as_String: (cls constantPool at: attr second) descriptor).
+ ].
+ ].
+ ^ info.
+
+ "Modified: / 03-12-2014 / 13:04:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_getGenericSignature: this
@@ -9555,13 +10038,13 @@
jClass := this.
cls := Reflection classForJavaClassObject:jClass.
interfaces := cls javaMirror getInterfaces.
- jInterfaces := (JavaVM classForName:'java.lang.Class' definedBy:nil) javaArrayClass new:interfaces size.
+ jInterfaces := _java_lang_Class_CLASS javaArrayClass new:interfaces size.
interfaces
withIndexDo:[:iface :idx | jInterfaces at:idx put:(Reflection javaClassObjectForClass:iface) ].
^ jInterfaces
"Modified: / 28-01-2011 / 15:19:11 / Marcel Hlopko <hlopik@gmail.com>"
- "Modified: / 22-08-2012 / 11:08:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 21-05-2013 / 16:25:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_getModifiers: this
@@ -9690,53 +10173,52 @@
"Modified: / 28-01-2011 / 15:19:24 / Marcel Hlopko <hlopik@gmail.com>"
!
-_java_lang_Class_isAssignableFrom: this _:a1
-
+_java_lang_Class_isAssignableFrom:this _:a1
<javanative: 'java/lang/Class' name: 'isAssignableFrom(Ljava/lang/Class;)Z'>
-
- "
- /**
- * Determines if the class or interface represented by this
- * {@code Class} object is either the same as, or is a superclass or
- * superinterface of, the class or interface represented by the specified
- * {@code Class} parameter. It returns {@code true} if so;
- * otherwise it returns {@code false}. If this {@code Class}
- * object represents a primitive type, this method returns
- * {@code true} if the specified {@code Class} parameter is
- * exactly this {@code Class} object; otherwise it returns
- * {@code false}.
- *
- * <p> Specifically, this method tests whether the type represented by the
- * specified {@code Class} parameter can be converted to the type
- * represented by this {@code Class} object via an identity conversion
- * or via a widening reference conversion. See <em>The Java Language
- * Specification</em>, sections 5.1.1 and 5.1.4 , for details.
- *
- * @param cls the {@code Class} object to be checked
- * @return the {@code boolean} value indicating whether objects of the
- * type {@code cls} can be assigned to objects of this class
- * @exception NullPointerException if the specified Class parameter is
- * null.
- * @since JDK1.1
- */
- "
- | clsObj me other |
+ "
+/**
+ * Determines if the class or interface represented by this
+ * {@code Class} object is either the same as, or is a superclass or
+ * superinterface of, the class or interface represented by the specified
+ * {@code Class} parameter. It returns {@code true} if so;
+ * otherwise it returns {@code false}. If this {@code Class}
+ * object represents a primitive type, this method returns
+ * {@code true} if the specified {@code Class} parameter is
+ * exactly this {@code Class} object; otherwise it returns
+ * {@code false}.
+ *
+ * <p> Specifically, this method tests whether the type represented by the
+ * specified {@code Class} parameter can be converted to the type
+ * represented by this {@code Class} object via an identity conversion
+ * or via a widening reference conversion. See <em>The Java Language
+ * Specification</em>, sections 5.1.1 and 5.1.4 , for details.
+ *
+ * @param cls the {@code Class} object to be checked
+ * @return the {@code boolean} value indicating whether objects of the
+ * type {@code cls} can be assigned to objects of this class
+ * @exception NullPointerException if the specified Class parameter is
+ * null.
+ * @since JDK1.1
+ */"
+
+ | clsObj me other |
+
clsObj := a1.
- clsObj ifNil:[^JavaVM throwNullPointerException].
- me := Reflection classForJavaClassObject: this.
- other := Reflection classForJavaClassObject: clsObj.
-
+ clsObj isNil ifTrue:[
+ ^ JavaVM throwNullPointerException
+ ].
+ me := Reflection classForJavaClassObject:this.
+ other := Reflection classForJavaClassObject:clsObj.
+
"/ Determines if the class or interface represented by this
"/ @code Class} object is either the same as, or is a superclass or
"/ superinterface of, the class or interface represented by the specified
"/ {@code Class} parameter.
-
- ^(other includesBehavior: me)
- ifTrue:[1]
- ifFalse:[0]
+
+ ^ (other includesBehavior:me) ifTrue:[ 1 ] ifFalse:[ 0 ]
"Created: / 12-11-1998 / 18:54:16 / cg"
- "Modified: / 05-02-2011 / 23:38:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 04-08-2014 / 15:55:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_isInstance: this _:a1
@@ -9837,10 +10319,10 @@
<javanative: 'java/lang/Class' name: 'registerNatives()V'>
-
"Nothing to do, native method are bound lazily"
"Created: / 20-10-2010 / 11:13:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 22-05-2013 / 20:44:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Class_setProtectionDomain0: this _: a1
@@ -9919,7 +10401,7 @@
"Modified: / 09-02-2012 / 22:56:37 / mh <hlopik@gmail.com>"
!
-_java_lang_Double_doubleToRawLongBits: this _:a1 _: a2
+_java_lang_Double_doubleToRawLongBits: this _: d _: ignored
<javanative: 'java/lang/Double' name: 'doubleToRawLongBits(D)J'>
@@ -9961,76 +10443,78 @@
* @since 1.3
*/
"
- | f b |
- f := a1.
- (f = 0.0) ifTrue:[^0].
- (f = -0.0) ifTrue:[^(1 bitShift: 63)].
-
- b := ByteArray streamContents:[:s|Float storeBinaryIEEEDouble:f on:s MSB: UninterpretedBytes isBigEndian].
- ^ LargeInteger digitBytes: b MSB: UninterpretedBytes isBigEndian.
-
-
-"/ | f |
-"/ f := nativeContext argAt:1.
-"/ f class == Float ifFalse:[ ^self throwIllegalArgumentException: 'Not a float'].
-"/%{
-"/ __int64__ *i = &(__floatVal(f));
-"/ RETURN (__MKINT64( i ));
-"/%}.
-"/ self primitiveFailed.
+"/ | b |
+"/
+"/ (d = 0.0) ifTrue:[^0].
+"/ (d = -0.0) ifTrue:[^(1 bitShift: 63)].
+"/
+"/ b := ByteArray streamContents:[:s|Float storeBinaryIEEEDouble:d on:s MSB: UninterpretedBytes isBigEndian].
+"/ ^ LargeInteger digitBytes: b MSB: UninterpretedBytes isBigEndian.
+
+
+"/ d class == Float ifFalse:[ ^self throwIllegalArgumentException: 'Not a double'].
+%{
+ union {
+ double dbl;
+ __int64__ l;
+ } u;
+ u.dbl = __floatVal(d);
+ RETURN ( __MKINT64( &(u.l) ) );
+%}.
+ self primitiveFailed.
"Created: / 10-11-2010 / 14:48:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 16-12-2012 / 23:23:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-_java_lang_Double_longBitsToDouble: this _:a1 _: a2
+ "Modified: / 14-11-2013 / 00:09:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+
+!
+
+_java_lang_Double_longBitsToDouble: this _:i _: a2
<javanative: 'java/lang/Double' name: 'longBitsToDouble(J)D'>
- |i aFloat|
-
- i := a1.
-
- aFloat := Float new.
- UninterpretedBytes isBigEndian ifTrue:[
- aFloat basicAt:1 put:((i bitShift:-56) bitAnd:16rFF).
- aFloat basicAt:2 put:((i bitShift:-48) bitAnd:16rFF).
- aFloat basicAt:3 put:((i bitShift:-40) bitAnd:16rFF).
- aFloat basicAt:4 put:((i bitShift:-32) bitAnd:16rFF).
- aFloat basicAt:5 put:((i bitShift:-24) bitAnd:16rFF).
- aFloat basicAt:6 put:((i bitShift:-16) bitAnd:16rFF).
- aFloat basicAt:7 put:((i bitShift:-8) bitAnd:16rFF).
- aFloat basicAt:8 put:(i bitAnd:16rFF).
- ] ifFalse:[
- aFloat basicAt:1 put:(i bitAnd:16rFF).
- aFloat basicAt:2 put:((i bitShift:-8) bitAnd:16rFF).
- aFloat basicAt:3 put:((i bitShift:-16) bitAnd:16rFF).
- aFloat basicAt:4 put:((i bitShift:-24) bitAnd:16rFF).
- aFloat basicAt:5 put:((i bitShift:-32) bitAnd:16rFF).
- aFloat basicAt:6 put:((i bitShift:-40) bitAnd:16rFF).
- aFloat basicAt:7 put:((i bitShift:-48) bitAnd:16rFF).
- aFloat basicAt:8 put:((i bitShift:-56) bitAnd:16rFF).
- ].
-
- ^ aFloat.
-
-
-"/ | i f|
+"/ | aFloat|
"/
-"/ i := nativeContext argAt:1.
-"/ f := Float new.
-"/%{
-"/ long long l;
-"/ l = __longIntVal(i);
-"/ double *d = &l;
-"/ __floatVal(f) = *d;
-"/%}.
-"/ ^f
-
- "Modified: / 16-12-2012 / 23:24:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-_java_lang_Float_floatToRawIntBits: this _:a1
+"/ aFloat := Float new.
+"/ UninterpretedBytes isBigEndian ifTrue:[
+"/ aFloat basicAt:1 put:((i bitShift:-56) bitAnd:16rFF).
+"/ aFloat basicAt:2 put:((i bitShift:-48) bitAnd:16rFF).
+"/ aFloat basicAt:3 put:((i bitShift:-40) bitAnd:16rFF).
+"/ aFloat basicAt:4 put:((i bitShift:-32) bitAnd:16rFF).
+"/ aFloat basicAt:5 put:((i bitShift:-24) bitAnd:16rFF).
+"/ aFloat basicAt:6 put:((i bitShift:-16) bitAnd:16rFF).
+"/ aFloat basicAt:7 put:((i bitShift:-8) bitAnd:16rFF).
+"/ aFloat basicAt:8 put:(i bitAnd:16rFF).
+"/ ] ifFalse:[
+"/ aFloat basicAt:1 put:(i bitAnd:16rFF).
+"/ aFloat basicAt:2 put:((i bitShift:-8) bitAnd:16rFF).
+"/ aFloat basicAt:3 put:((i bitShift:-16) bitAnd:16rFF).
+"/ aFloat basicAt:4 put:((i bitShift:-24) bitAnd:16rFF).
+"/ aFloat basicAt:5 put:((i bitShift:-32) bitAnd:16rFF).
+"/ aFloat basicAt:6 put:((i bitShift:-40) bitAnd:16rFF).
+"/ aFloat basicAt:7 put:((i bitShift:-48) bitAnd:16rFF).
+"/ aFloat basicAt:8 put:((i bitShift:-56) bitAnd:16rFF).
+"/ ].
+"/
+"/ ^ aFloat.
+
+
+ | f |
+
+ f := Float new.
+%{
+ union {
+ double dbl;
+ __int64__ l;
+ } u;
+ __signedLong64IntVal(i, &(u.l));
+ __floatVal(f) = u.dbl;
+%}.
+ ^f
+
+ "Modified: / 14-11-2013 / 20:05:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_lang_Float_floatToRawIntBits: this _:f
<javanative: 'java/lang/Float' name: 'floatToRawIntBits(F)I'>
@@ -10071,50 +10555,57 @@
* @since 1.3
*/
"
- | f b |
- f := a1.
- f class == ShortFloat ifFalse:[ Reflection throwIllegalArgumentException:'Not a float'].
%{
- int *ival = &__shortFloatVal(f);
- RETURN (__MKINT(*ival));
+ union {
+ float flt;
+ INT i;
+ } u;
+ u.flt = __shortFloatVal(f);
+ RETURN ( __MKINT( u.i ) );
%}.
self primitiveFailed.
"Created: / 09-11-2010 / 20:59:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 16-12-2012 / 11:16:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-_java_lang_Float_intBitsToFloat: this _:a1
+ "Modified: / 14-11-2013 / 23:11:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_java_lang_Float_intBitsToFloat: this _: ii
<javanative: 'java/lang/Float' name: 'intBitsToFloat(I)F'>
- | i f|
-
- i := a1.
- f := ShortFloat new.
+ | ff |
+
+ ff := ShortFloat new.
%{
- int ival = __intVal(i);
- float *fval = &ival;
- __shortFloatVal(f) = *fval;
+ union {
+ float flt;
+ INT i;
+ } u;
+ u.i = __signedLongIntVal(ii);
+ __shortFloatVal(ff) = u.flt;
%}.
- ^f
-
- "Modified: / 16-12-2012 / 10:39:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ ^ff
+
+ "Modified: / 14-11-2013 / 23:07:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Object_clone: this
<javanative: 'java/lang/Object' name: 'clone()Ljava/lang/Object;'>
- "clone an object"
-
- |o rslt|
-
- o := this.
- rslt := o shallowCopy.
- ^ rslt
-
- "Created: / 4.1.1998 / 19:39:26 / cg"
+ "clone an object"
+
+ | cls |
+
+ cls := this class.
+ cls isCloneable == false ifTrue:[
+ JavaVM throwCloneNotSupportedException.
+ ^ nil.
+ ].
+ ^ this shallowCopy.
+
+ "Created: / 04-01-1998 / 19:39:26 / cg"
+ "Modified: / 12-11-2013 / 02:03:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Object_getClass: this
@@ -10170,12 +10661,10 @@
_java_lang_Object_registerNatives: this
<javanative: 'java/lang/Object' name: 'registerNatives()V'>
-
-
"Nothing to do, native method are bound lazily"
"Created: / 19-10-2010 / 12:42:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-10-2010 / 10:57:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 22-05-2013 / 20:44:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Object_wait: this _:a1 _: a2
@@ -10399,14 +10888,14 @@
ctx := ctx sender.
].
- jclasses := (JavaVM classForName:'java.lang.Class' definedBy:nil) javaArrayClass new: classes size.
+ jclasses := _java_lang_Class_CLASS javaArrayClass new: classes size.
1 to: classes size do:[:i|
jclasses at: i put: (Reflection javaClassObjectForClass: (classes at: i)).
].
^jclasses
"Created: / 12-11-1998 / 18:56:06 / cg"
- "Modified: / 15-11-2011 / 00:27:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 21-05-2013 / 16:25:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Shutdown_halt0: this _:a1
@@ -10429,70 +10918,65 @@
<javanative: 'java/lang/StrictMath' name: 'IEEEremainder(DD)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_lang_StrictMath_acos: this _: a1
-
- <javanative: 'java/lang/StrictMath' name: 'acos(D)D'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jremainder ( double , double );
+ RETURN ( __MKFLOAT( jremainder ( __floatVal ( a1 ) , __floatVal ( a3 ) ) ) );
+%}
+
!
_java_lang_StrictMath_acos: this _: a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'acos(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_lang_StrictMath_asin: this _: a1
-
- <javanative: 'java/lang/StrictMath' name: 'asin(D)D'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jacos ( double );
+ RETURN ( __MKFLOAT( jacos ( __floatVal ( a1 ) ) ) );
+%}
+
!
_java_lang_StrictMath_asin: this _: a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'asin(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_lang_StrictMath_atan2: this _: a1 _: a2 _: a3
-
- <javanative: 'java/lang/StrictMath' name: 'atan2(DD)D'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jasin ( double );
+ RETURN ( __MKFLOAT( jasin ( __floatVal ( a1 ) ) ) );
+%}
+
!
_java_lang_StrictMath_atan2: this _: a1 _: a2 _: a3 _: a4
<javanative: 'java/lang/StrictMath' name: 'atan2(DD)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_lang_StrictMath_atan: this _: a1
-
- <javanative: 'java/lang/StrictMath' name: 'atan(D)D'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jatan2 ( double , double );
+ RETURN ( __MKFLOAT( jatan2 ( __floatVal ( a1 ) , __floatVal ( a3 ) ) ) );
+%}
+
!
_java_lang_StrictMath_atan: this _: a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'atan(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jatan ( double );
+ RETURN ( __MKFLOAT( jatan ( __floatVal ( a1 ) ) ) );
+%}
+
!
_java_lang_StrictMath_cbrt: this _:a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'cbrt(D)D'>
- ^ JavaMathSupport cbrt: a1
+%{
+ extern double jcbrt ( double );
+ RETURN ( __MKFLOAT( jcbrt ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 07-09-2011 / 17:34:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10501,7 +10985,10 @@
<javanative: 'java/lang/StrictMath' name: 'ceil(D)D'>
- ^ a1 ceiling
+%{
+ extern double jceil ( double );
+ RETURN ( __MKFLOAT( jceil ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 21-08-2012 / 18:01:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10510,7 +10997,11 @@
<javanative: 'java/lang/StrictMath' name: 'cos(D)D'>
- ^ JavaMathSupport cos: a1
+%{
+ extern double jcos ( double );
+ RETURN ( __MKFLOAT( jcos ( __floatVal ( a1 ) ) ) );
+%}
+
"Modified: / 07-09-2011 / 17:34:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10519,33 +11010,10 @@
<javanative: 'java/lang/StrictMath' name: 'cosh(D)D'>
- "
- /**
- * Returns the hyperbolic cosine of a {@code double} value.
- * The hyperbolic cosine of <i>x</i> is defined to be
- * (<i>e<sup>x</sup> + e<sup>-x</sup></i>)/2
- * where <i>e</i> is {@linkplain Math#E Euler's number}.
- *
- * <p>Special cases:
- * <ul>
- *
- * <li>If the argument is NaN, then the result is NaN.
- *
- * <li>If the argument is infinite, then the result is positive
- * infinity.
- *
- * <li>If the argument is zero, then the result is {@code 1.0}.
- *
- * </ul>
- *
- * @param x The number whose hyperbolic cosine is to be returned.
- * @return The hyperbolic cosine of {@code x}.
- * @since 1.5
- */
- public static native double cosh(double x);
- "
-
- ^JavaMathSupport cosh: a1
+%{
+ extern double jcosh ( double );
+ RETURN ( __MKFLOAT( jcosh ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 06-09-2011 / 19:25:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10554,15 +11022,20 @@
<javanative: 'java/lang/StrictMath' name: 'exp(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jexp ( double );
+ RETURN ( __MKFLOAT( jexp ( __floatVal ( a1 ) ) ) );
+%}
!
_java_lang_StrictMath_expm1: this _:a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'expm1(D)D'>
- ^ JavaMathSupport expm1: a1
-
+%{
+ extern double jexpm1 ( double );
+ RETURN ( __MKFLOAT( jexpm1 ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 07-09-2011 / 17:34:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10570,8 +11043,10 @@
<javanative: 'java/lang/StrictMath' name: 'floor(D)D'>
- ^ JavaMathSupport floor: a1
-
+%{
+ extern double jfloor ( double );
+ RETURN ( __MKFLOAT( jfloor ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 07-09-2011 / 17:33:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10579,42 +11054,52 @@
<javanative: 'java/lang/StrictMath' name: 'hypot(DD)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jhypot ( double, double );
+ RETURN ( __MKFLOAT( jhypot ( __floatVal ( a1 ) , __floatVal ( a3 ) ) ) );
+%}
!
_java_lang_StrictMath_log10: this _: a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'log10(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jlog10 ( double );
+ RETURN ( __MKFLOAT( jlog10 ( __floatVal ( a1 ) ) ) );
+%}
+
!
_java_lang_StrictMath_log1p: this _: a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'log1p(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_lang_StrictMath_log: this _: a1
-
- <javanative: 'java/lang/StrictMath' name: 'log(D)D'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jlog1p ( double );
+ RETURN ( __MKFLOAT( jlog1p ( __floatVal ( a1 ) ) ) );
+%}
+
!
_java_lang_StrictMath_log: this _: a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'log(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jlog ( double );
+ RETURN ( __MKFLOAT( jlog ( __floatVal ( a1 ) ) ) );
+%}
!
_java_lang_StrictMath_pow: this _:a1 _: a2 _: a3 _: a4
<javanative: 'java/lang/StrictMath' name: 'pow(DD)D'>
- ^JavaMathSupport pow: a1 to: a3
+%{
+ extern double jpow ( double, double );
+ RETURN ( __MKFLOAT( jpow ( __floatVal ( a1 ) , __floatVal ( a3 ) ) ) );
+%}
"Modified: / 07-09-2011 / 17:33:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10623,7 +11108,10 @@
<javanative: 'java/lang/StrictMath' name: 'sin(D)D'>
- ^ JavaMathSupport sin: a1
+%{
+ extern double jsin ( double );
+ RETURN ( __MKFLOAT( jsin ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 08-02-2013 / 10:49:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10632,35 +11120,10 @@
<javanative: 'java/lang/StrictMath' name: 'sinh(D)D'>
- "
- /**
- * Returns the hyperbolic sine of a {@code double} value.
- * The hyperbolic sine of <i>x</i> is defined to be
- * (<i>e<sup>x</sup> - e<sup>-x</sup></i>)/2
- * where <i>e</i> is {@linkplain Math#E Euler's number}.
- *
- * <p>Special cases:
- * <ul>
- *
- * <li>If the argument is NaN, then the result is NaN.
- *
- * <li>If the argument is infinite, then the result is an infinity
- * with the same sign as the argument.
- *
- * <li>If the argument is zero, then the result is a zero with the
- * same sign as the argument.
- *
- * </ul>
- *
- * @param x The number whose hyperbolic sine is to be returned.
- * @return The hyperbolic sine of {@code x}.
- * @since 1.5
- */
- public static native double sinh(double x);
-
- "
-
- ^ JavaMathSupport sinh: a1
+ %{
+ extern double jsinh ( double );
+ RETURN ( __MKFLOAT( jsinh ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 06-09-2011 / 19:36:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified (format): / 07-09-2011 / 17:31:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -10670,7 +11133,10 @@
<javanative: 'java/lang/StrictMath' name: 'sqrt(D)D'>
- ^a1 sqrt
+%{
+ extern double jsqrt ( double );
+ RETURN ( __MKFLOAT( jsqrt ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 17-07-2012 / 20:53:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10679,46 +11145,20 @@
<javanative: 'java/lang/StrictMath' name: 'tan(D)D'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+%{
+ extern double jtan ( double );
+ RETURN ( __MKFLOAT( jtan ( __floatVal ( a1 ) ) ) );
+%}
+
!
_java_lang_StrictMath_tanh: this _:a1 _: a2
<javanative: 'java/lang/StrictMath' name: 'tanh(D)D'>
- "
- /**
- * Returns the hyperbolic tangent of a {@code double} value.
- * The hyperbolic tangent of <i>x</i> is defined to be
- * (<i>e<sup>x</sup> - e<sup>-x</sup></i>)/(<i>e<sup>x</sup> + e<sup>-x</sup></i>),
- * in other words, {@linkplain Math#sinh
- * sinh(<i>x</i>)}/{@linkplain Math#cosh cosh(<i>x</i>)}. Note
- * that the absolute value of the exact tanh is always less than
- * 1.
- *
- * <p>Special cases:
- * <ul>
- *
- * <li>If the argument is NaN, then the result is NaN.
- *
- * <li>If the argument is zero, then the result is a zero with the
- * same sign as the argument.
- *
- * <li>If the argument is positive infinity, then the result is
- * {@code +1.0}.
- *
- * <li>If the argument is negative infinity, then the result is
- * {@code -1.0}.
- *
- * </ul>
- *
- * @param x The number whose hyperbolic tangent is to be returned.
- * @return The hyperbolic tangent of {@code x}.
- * @since 1.5
- */
- public static native double tanh(double x);
- "
-
- ^ JavaMathSupport tanh: a1
+%{
+ extern double jtanh ( double );
+ RETURN ( __MKFLOAT( jtanh ( __floatVal ( a1 ) ) ) );
+%}
"Modified: / 07-09-2011 / 17:32:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
@@ -10857,7 +11297,7 @@
<javanative: 'java/lang/System' name: 'initProperties(Ljava/util/Properties;)Ljava/util/Properties;'>
- |props stProps|
+ |props stProps|
props := a1.
stProps := JavaVM systemProperties.
@@ -10892,6 +11332,9 @@
name := Java as_ST_String: a1.
OperatingSystem isUNIXlike ifTrue:[
+ OperatingSystem isOSXlike ifTrue:[
+ ^Java as_String: ('lib' , name , '.jnilib').
+ ].
^Java as_String: ('lib' , name , '.so').
].
@@ -10917,11 +11360,10 @@
_java_lang_System_registerNatives: this
<javanative: 'java/lang/System' name: 'registerNatives()V'>
-
-
"Nothing to do, native method are bound lazily"
"Created: / 20-10-2010 / 10:56:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 22-05-2013 / 20:44:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_System_setErr0: this _:a1
@@ -10985,14 +11427,14 @@
| t p nctx |
p := Processor activeProcess.
t := JavaVM javaThreadForSTProcess: p.
- (nctx := self nativeContext) sender receiver class name
- = 'java/util/concurrent/locks/ReentrantLock$NonfairSync'
- ifTrue: [
- | owner |
- owner := (nctx sender receiver
- perform: #'getExclusiveOwnerThread()Ljava/lang/Thread;').
- (owner notNil and: [ owner ~= t ]) ifTrue: [ self breakPoint: #mh. ]
- ].
+"/ (nctx := self nativeContext) sender receiver class name
+"/ = 'java/util/concurrent/locks/ReentrantLock$NonfairSync'
+"/ ifTrue: [
+"/ | owner |
+"/ owner := (nctx sender receiver
+"/ perform: #'getExclusiveOwnerThread()Ljava/lang/Thread;').
+"/ (owner notNil and: [ owner ~= t ]) ifTrue: [ self breakPoint: #mh. ]
+"/ ].
t notNil ifTrue: [ ^ t ].
t := JavaVM newThread: p name.
t instVarNamed: 'tid' put: p id.
@@ -11128,6 +11570,13 @@
"Modified: / 6.2.1998 / 02:15:08 / cg"
!
+_java_lang_Thread_setNativeName: this _: a1
+
+ <javanative: 'java/lang/Thread' name: 'setNativeName(Ljava/lang/String;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_java_lang_Thread_setPriority0: this _:a1
<javanative: 'java/lang/Thread' name: 'setPriority0(I)V'>
@@ -11155,9 +11604,7 @@
| millis |
millis := a1.
millis < 0 ifTrue: [
- Reflection
- throwIllegalArgumentException:('negative timeout: %1 in Thread.sleep'
- bindWith:millis)
+ JavaVM throwIllegalArgumentException:('negative timeout: %1 in Thread.sleep' bindWith:millis)
].
Logger
log: ('%1 going to sleep for %2'
@@ -11169,7 +11616,7 @@
"Modified: / 08-01-1999 / 16:42:52 / cg"
"Modified: / 30-11-2011 / 13:58:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
- "Modified: / 16-01-2013 / 19:49:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 08-11-2013 / 22:55:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_Thread_start0: this
@@ -11295,7 +11742,7 @@
"/ cleanup ...
list add: con shallowCopy
].
- con := con sender
+ con := nil"/con sender
].
exceptionObject instVarNamed: 'backtrace' put: (list asArray).
^ nil.
@@ -11396,25 +11843,33 @@
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - java.lang.reflect'!
-_java_lang_reflect_Array_get: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'get(Ljava/lang/Object;I)Ljava/lang/Object;'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_lang_reflect_Array_get: this _: a1 _: a2
+_java_lang_reflect_Array_get: this _: arr _: idx
<javanative: 'java/lang/reflect/Array' name: 'get(Ljava/lang/Object;I)Ljava/lang/Object;'>
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
-_java_lang_reflect_Array_getBoolean: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getBoolean(Ljava/lang/Object;I)Z'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+ | e |
+
+ arr isNil ifTrue:[
+ JavaVM throwNullPointerException: 'array argumen is null'.
+ ^ self.
+ ].
+
+ arr isJavaArray ifFalse:[
+ JavaVM throwIllegalArgumentException: 'array argument is not an array'.
+ ].
+
+ (idx between: 0 and: arr size - 1) ifFalse:[
+ JavaVM throwArrayIndexOutOfBoundsException: arr _: idx.
+ ^ self.
+ ].
+
+ e := arr at: idx + 1.
+ arr class javaComponentClass isJavaPrimitiveType ifTrue:[
+ e := arr class javaComponentClass javaBox: e.
+ ].
+ ^ e
+
+ "Modified: / 10-04-2014 / 15:31:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_reflect_Array_getBoolean: this _: a1 _: a2
@@ -11424,13 +11879,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_getByte: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getByte(Ljava/lang/Object;I)B'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_getByte: this _: a1 _: a2
<javanative: 'java/lang/reflect/Array' name: 'getByte(Ljava/lang/Object;I)B'>
@@ -11438,13 +11886,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_getChar: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getChar(Ljava/lang/Object;I)C'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_getChar: this _: a1 _: a2
<javanative: 'java/lang/reflect/Array' name: 'getChar(Ljava/lang/Object;I)C'>
@@ -11452,13 +11893,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_getDouble: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getDouble(Ljava/lang/Object;I)D'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_getDouble: this _: a1 _: a2
<javanative: 'java/lang/reflect/Array' name: 'getDouble(Ljava/lang/Object;I)D'>
@@ -11466,13 +11900,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_getFloat: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getFloat(Ljava/lang/Object;I)F'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_getFloat: this _: a1 _: a2
<javanative: 'java/lang/reflect/Array' name: 'getFloat(Ljava/lang/Object;I)F'>
@@ -11480,13 +11907,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_getInt: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getInt(Ljava/lang/Object;I)I'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_getInt: this _: a1 _: a2
<javanative: 'java/lang/reflect/Array' name: 'getInt(Ljava/lang/Object;I)I'>
@@ -11503,13 +11923,6 @@
"Modified: / 17-08-2011 / 09:02:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-_java_lang_reflect_Array_getLong: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getLong(Ljava/lang/Object;I)J'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_getLong: this _: a1 _: a2
<javanative: 'java/lang/reflect/Array' name: 'getLong(Ljava/lang/Object;I)J'>
@@ -11517,13 +11930,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_getShort: this _: a1
-
- <javanative: 'java/lang/reflect/Array' name: 'getShort(Ljava/lang/Object;I)S'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_getShort: this _: a1 _: a2
<javanative: 'java/lang/reflect/Array' name: 'getShort(Ljava/lang/Object;I)S'>
@@ -11620,12 +12026,12 @@
<javanative: 'java/lang/reflect/Array' name: 'set(Ljava/lang/Object;ILjava/lang/Object;)V'>
- | index |
+ | index valueToStore |
index := index0 + 1.
array isJavaArray ifFalse:[
- JavaVM throwIllegalArgumentException:'passed object is not an array'.
+ JavaVM throwIllegalArgumentException:'array argument is not an array'.
^nil.
].
index < 1 ifTrue:[
@@ -11644,16 +12050,16 @@
JavaVM throwIllegalArgumentException:'type-incompatible value'.
^nil.
].
- array at: index put: value.
-
- "Modified: / 23-04-2013 / 23:44:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-_java_lang_reflect_Array_setBoolean: this _: a1 _: a2
-
- <javanative: 'java/lang/reflect/Array' name: 'setBoolean(Ljava/lang/Object;IZ)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+
+ valueToStore := value.
+ array class javaComponentClass isJavaPrimitiveType ifTrue:[
+ valueToStore := array class javaComponentClass javaUnbox: value.
+ ].
+
+
+ array at: index put: valueToStore.
+
+ "Modified: / 10-04-2014 / 15:32:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_lang_reflect_Array_setBoolean: this _: a1 _: a2 _: a3
@@ -11663,13 +12069,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_setByte: this _: a1 _: a2
-
- <javanative: 'java/lang/reflect/Array' name: 'setByte(Ljava/lang/Object;IB)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_setByte: this _: a1 _: a2 _: a3
<javanative: 'java/lang/reflect/Array' name: 'setByte(Ljava/lang/Object;IB)V'>
@@ -11677,13 +12076,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_setChar: this _: a1 _: a2
-
- <javanative: 'java/lang/reflect/Array' name: 'setChar(Ljava/lang/Object;IC)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_setChar: this _: a1 _: a2 _: a3
<javanative: 'java/lang/reflect/Array' name: 'setChar(Ljava/lang/Object;IC)V'>
@@ -11691,13 +12083,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_setDouble: this _: a1 _: a2 _: a3
-
- <javanative: 'java/lang/reflect/Array' name: 'setDouble(Ljava/lang/Object;ID)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_setDouble: this _: a1 _: a2 _: a3 _: a4
<javanative: 'java/lang/reflect/Array' name: 'setDouble(Ljava/lang/Object;ID)V'>
@@ -11705,13 +12090,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_setFloat: this _: a1 _: a2
-
- <javanative: 'java/lang/reflect/Array' name: 'setFloat(Ljava/lang/Object;IF)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_setFloat: this _: a1 _: a2 _: a3
<javanative: 'java/lang/reflect/Array' name: 'setFloat(Ljava/lang/Object;IF)V'>
@@ -11719,13 +12097,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_setInt: this _: a1 _: a2
-
- <javanative: 'java/lang/reflect/Array' name: 'setInt(Ljava/lang/Object;II)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_setInt: this _: a1 _: a2 _: a3
<javanative: 'java/lang/reflect/Array' name: 'setInt(Ljava/lang/Object;II)V'>
@@ -11733,13 +12104,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_setLong: this _: a1 _: a2 _: a3
-
- <javanative: 'java/lang/reflect/Array' name: 'setLong(Ljava/lang/Object;IJ)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_setLong: this _: a1 _: a2 _: a3 _: a4
<javanative: 'java/lang/reflect/Array' name: 'setLong(Ljava/lang/Object;IJ)V'>
@@ -11747,13 +12111,6 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_lang_reflect_Array_setShort: this _: a1 _: a2
-
- <javanative: 'java/lang/reflect/Array' name: 'setShort(Ljava/lang/Object;IS)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
-!
-
_java_lang_reflect_Array_setShort: this _: a1 _: a2 _: a3
<javanative: 'java/lang/reflect/Array' name: 'setShort(Ljava/lang/Object;IS)V'>
@@ -11855,7 +12212,7 @@
holder := inet4Address instVarNamed: #holder.
holder
instVarNamed: #family put: 1; "/IPv4
- instVarNamed: #address put: (sockaddr address doubleWordAt: 1 MSB: true);
+ instVarNamed: #address put: (sockaddr address signedDoubleWordAt: 1 MSB: true);
instVarNamed: #hostName put: a1.
inet4Address
instVarNamed: #canonicalHostName put: a1.
@@ -11863,7 +12220,7 @@
inet4Address := (JavaVM classForName:'java.net.Inet4Address' definedBy:nil) newCleared.
inet4Address
instVarNamed: #family put: 1; "/IPv4
- instVarNamed: #address put: (sockaddr address doubleWordAt: 1 MSB: true);
+ instVarNamed: #address put: (sockaddr address signedDoubleWordAt: 1 MSB: true);
instVarNamed: #hostName put: a1;
instVarNamed: #canonicalHostName put: a1.
].
@@ -12088,8 +12445,8 @@
].
sockaddr := IPSocketAddress new.
- sockaddr hostAddress: (jaddr perform: #'getAddress()[B').
- sockaddr port: port.
+ sockaddr hostAddress: (jaddr perform: #'getAddress()[B').
+ sockaddr port: port.
sock := self validateFile:this.
@@ -12166,7 +12523,7 @@
| sock sockaddr |
- sock := self validateFile: this.
+ sock := self validateFile: this.
sockaddr := IPSocketAddress new.
sock connectTo: sockaddr port: (this instVarNamed: #localPort)
@@ -12245,7 +12602,7 @@
| sock sockaddr dbuffer offset len address tout |
- sock := self validateFile: this.
+ sock := self validateFile: this.
sockaddr := IPSocketAddress new.
dbuffer := packet instVarAt: _java_net_DatagramPacket_buf_ID.
offset := packet instVarAt: _java_net_DatagramPacket_offset_ID.
@@ -12281,10 +12638,10 @@
sock := self validateFile:this.
address := packet instVarAt: _java_net_DatagramPacket_address_ID.
address isNil ifTrue:[
- JavaVM throwNullPointerException: 'null address in datagram packet'.
+ JavaVM throwNullPointerException: 'null address in datagram packet'.
].
sockaddr := IPSocketAddress new.
- sockaddr hostAddress: (address perform: #'getAddress()[B').
+ sockaddr hostAddress: (address perform: #'getAddress()[B').
sockaddr port: (packet instVarAt: _java_net_DatagramPacket_port_ID).
sockaddr port == 0 ifTrue:[
JavaVM throwIOExceptionWithMessage: 'port 0 is reserved'.
@@ -12325,20 +12682,20 @@
| sock ret |
- sock := self validateFile: this.
+ sock := self validateFile: this.
"/ case IP_TOS:
optid == 16r1002 ifTrue:[
self breakPoint: #jv.
- ^Java as_Integer:-1 "/Unsupported
+ ^Java as_Integer:-1 "/Unsupported
].
"/ case SO_BINDADDR:
optid == 16rF ifTrue:[
| addr |
-"/ ^ Java as_Integer: (sock getSocketAddress doubleWordAt:1)
+"/ ^ Java as_Integer: (sock getSocketAddress doubleWordAt:1)
addr := sock getFullSocketAddress.
- ^ (JavaVM classForName:'java.net.Inet4Address') basicNew
+ ^ (JavaVM classForName:'java.net.Inet4Address') basicNew
perform: #'<init>(Ljava/lang/String;[B)V'
with: (Java as_String: addr hostName)
with: (addr hostAddress);
@@ -12550,8 +12907,8 @@
|sock sockaddr ok err|
sockaddr := IPSocketAddress new.
- sockaddr hostAddress: (addr perform: #'getAddress()[B').
- sockaddr port: port.
+ sockaddr hostAddress: (addr perform: #'getAddress()[B').
+ sockaddr port: port.
sock := self validateFile:this.
sock notNil ifTrue:[
@@ -12598,8 +12955,8 @@
].
sockaddr := IPSocketAddress new.
- sockaddr hostAddress: (jaddr perform: #'getAddress()[B').
- sockaddr port: port.
+ sockaddr hostAddress: (jaddr perform: #'getAddress()[B').
+ sockaddr port: port.
sock := self validateFile:this.
@@ -12779,11 +13136,14 @@
"Modified: / 17-08-2012 / 15:27:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-_java_net_PlainSocketImpl_socketSendUrgentData: this _: a1
+_java_net_PlainSocketImpl_socketSendUrgentData: this _: data
<javanative: 'java/net/PlainSocketImpl' name: 'socketSendUrgentData(I)V'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ | sock |
+
+ sock := self validateFile: this.
+ sock nextPut: (data & 16rFF)
!
_java_net_PlainSocketImpl_socketSetOption: this _:a1 _: a2 _: a3
@@ -12861,11 +13221,14 @@
"Modified: / 14-08-2013 / 15:37:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-_java_net_PlainSocketImpl_socketShutdown: this _: a1
-
+_java_net_PlainSocketImpl_socketShutdown: this _: what
<javanative: 'java/net/PlainSocketImpl' name: 'socketShutdown(I)V'>
-
- ^ JavaVM unimplementedNativeMethodSignal raise
+ "Shuts down either reading (what = 0) or writing (what = 1) end of a socket"
+
+ | sock |
+
+ sock := self validateFile: this.
+ sock shutdown: what.
!
_java_net_SocketInputStream_init: this
@@ -13207,12 +13570,12 @@
].
con := con sender.
].
- ^(JavaVM classForName:'java.lang.Class' definedBy:nil) javaArrayClass withAll: chain
+ ^_java_lang_Class_CLASS javaArrayClass withAll: chain
"Created: / 05-01-1998 / 02:47:00 / cg"
"Modified: / 24-12-1998 / 00:34:57 / cg"
"Modified: / 28-01-2011 / 15:31:28 / Marcel Hlopko <hlopik@gmail.com>"
- "Modified: / 09-03-2013 / 17:37:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 21-05-2013 / 16:25:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_TimeZone_getSystemGMTOffsetID: this
@@ -13414,7 +13777,7 @@
level := a1.
strategy := a2.
nowrap := a3.
- deflater := JavaZipSupport deflaterFor: self.
+ deflater := JavaZipDeflater new vm: self.
deflater init: strategy level: level nowrap: nowrap.
1 to: ZipInflaters size do:[:i|
(ZipInflaters at: i) isNil ifTrue:[
@@ -13426,7 +13789,7 @@
^ZipInflaters size.
"/^deflater
- "Modified: / 25-10-2012 / 20:25:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 25-07-2014 / 00:36:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_zip_Deflater_initIDs: this
@@ -13541,7 +13904,7 @@
| nowrap inflater |
nowrap := a1.
- inflater := JavaZipSupport inflaterFor: self.
+ inflater := JavaZipInflater new vm: self.
inflater init: nowrap.
1 to: ZipInflaters size do:[:i|
(ZipInflaters at: i) isNil ifTrue:[
@@ -13553,7 +13916,7 @@
^ ZipInflaters size.
"Created: / 01-02-1998 / 20:14:01 / cg"
- "Modified: / 25-10-2012 / 20:25:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 25-07-2014 / 00:36:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_zip_Inflater_initIDs: this
@@ -13595,28 +13958,25 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
-_java_util_zip_ZipEntry_initFields: this _:a1 _: a2
-
+_java_util_zip_ZipEntry_initFields:this _:a1 _:a2
<javanative: 'java/util/zip/ZipEntry' name: 'initFields(J)V'>
-
- | entry jzentry zmember |
+ | entry jzentry zmember |
entry := this.
jzentry := a1.
- zmember := ZipEntryCache at: jzentry.
-
+ zmember := ZipEntryCache at:jzentry.
entry
- instVarNamed: #name put: (Java as_String: zmember fileName);
- instVarNamed: #time put: -1"zmember lastModFileTime";
- instVarNamed: #crc put: zmember crc32;
- instVarNamed: #size put: zmember uncompressedSize;
- instVarNamed: #csize put: zmember compressedSize;
- instVarNamed: #method put: zmember compressionMethod;
- instVarNamed: #extra put: zmember extraField;
- instVarNamed: #comment put: (zmember fileComment ifNotNil:[Java as_String: zmember fileComment]).
+ instVarNamed:#name put:(Java as_String:zmember fileName);
+ instVarNamed:#time put:-1;
+ instVarNamed:#crc put:zmember crc32;
+ instVarNamed:#size put:zmember uncompressedSize;
+ instVarNamed:#csize put:zmember compressedSize;
+ instVarNamed:#method put:zmember compressionMethod;
+ instVarNamed:#extra put:zmember extraField;
+ instVarNamed:#comment put:(zmember fileComment notNil ifTrue:[ Java as_String:zmember fileComment ]).
"Created: / 01-04-2011 / 13:04:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
- "Modified: / 05-12-2011 / 23:42:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 04-08-2014 / 15:52:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_zip_ZipEntry_initIDs: this
@@ -13645,9 +14005,18 @@
<javanative: 'java/util/zip/ZipFile' name: 'freeEntry(JJ)V'>
- jzentry = 0 ifFalse: [ ZipEntryCache at: jzentry put: nil ].
-
- "Modified: / 30-01-2013 / 13:47:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ jzentry = 0 ifFalse: [
+ ZipEntryCacheLock critical:[
+ "/Logger
+ "/ log: 'java.util.zip.ZipFile.freeEntry() called for ', jzentry printString
+ "/ severity: #debug
+ "/ facility: 'JVM'.
+ ZipEntryCache at: jzentry put: ZipEntryCacheFirstFree.
+ ZipEntryCacheFirstFree := jzentry.
+ ].
+ ].
+
+ "Modified: / 10-12-2013 / 00:55:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_zip_ZipFile_getCSize: this _:a1 _: a2
@@ -13676,16 +14045,31 @@
member isNil ifTrue: [
^ 0
] ifFalse: [
- ^ ZipEntryCache indexOf: member ifAbsent:[
- ZipEntryCache add: member.
- ZipEntryCache size.
- ]
- ]
+ "/^ ZipEntryCache indexOf: member ifAbsent:[
+ | index |
+
+ ZipEntryCacheLock critical:[
+ ZipEntryCacheFirstFree == 0 ifTrue:[
+ ZipEntryCache add: member.
+ index := ZipEntryCache size.
+ ] ifFalse:[
+ index := ZipEntryCacheFirstFree.
+ ZipEntryCacheFirstFree := ZipEntryCache at: index.
+ ZipEntryCache at: index put: member.
+ ].
+ ].
+ "/Logger
+ "/ log: 'java.util.zip.ZipFile.getEntry() called for ', index printString
+ "/ severity: #debug
+ "/ facility: 'JVM'.
+ ^ index.
+ "/"].
+ ].
"Created: / 27-03-2011 / 16:59:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
"Modified: / 01-04-2011 / 16:03:01 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
"Modified: / 18-08-2011 / 19:44:56 / jv"
- "Modified: / 20-07-2012 / 19:27:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 25-07-2014 / 01:26:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_zip_ZipFile_getMethod: this _:a1 _: a2
@@ -13706,22 +14090,24 @@
<javanative: 'java/util/zip/ZipFile' name: 'getNextEntry(JI)J'>
- | zipArchive i |
+ | zipArchive member jzentry |
zipArchive := self getZipArchiveAt:jzfile.
- i := 0.
- zipArchive zipMembersDo:[:member |
- index == i ifTrue:[
- ^ ZipEntryCache indexOf: member ifAbsent:[
- ZipEntryCache add: member.
- ZipEntryCache size.
- ]
- ].
- i := i + 1.
- ].
- ^0
-
- "Modified: / 30-01-2013 / 13:48:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ (index between: 0 and: zipArchive members size - 1) ifFalse:[ ^ 0 ].
+ member := zipArchive members at: index + 1.
+ ZipEntryCacheLock critical:[
+ ZipEntryCacheFirstFree == 0 ifTrue:[
+ ZipEntryCache add: member.
+ jzentry := ZipEntryCache size.
+ ] ifFalse:[
+ jzentry := ZipEntryCacheFirstFree.
+ ZipEntryCacheFirstFree := ZipEntryCache at: jzentry.
+ ZipEntryCache at: jzentry put: member.
+ ].
+ ].
+ ^ jzentry.
+
+ "Modified: / 25-07-2014 / 01:45:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_zip_ZipFile_getSize: this _:a1 _: a2
@@ -13791,7 +14177,7 @@
ZipCacheLastAccessed notNil ifTrue:[
ZipCacheLastAccessed closeFile.
].
- zar := ZipArchive readingFrom: result readStream.
+ zar := JavaZipFile readingFrom: result readStream.
zar checkZipArchive ifFalse:[
JavaVM throwZipException:'Cannot open zip file: not a zip archive'.
].
@@ -13808,7 +14194,7 @@
]
"Modified: / 01-04-2011 / 15:35:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
- "Modified: / 23-04-2013 / 00:52:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 25-07-2014 / 01:27:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_java_util_zip_ZipFile_read: this _:a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9
@@ -13835,7 +14221,7 @@
"Modified: / 01-05-2011 / 16:22:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
-_java_util_zip_ZipFile_startsWithLOC: this _: a1 _: a2
+_java_util_zip_ZipFile_startsWithLOC: this _: a1 _: a2
<javanative: 'java/util/zip/ZipFile' name: 'startsWithLOC(J)Z'>
@@ -13845,6 +14231,120 @@
"Modified: / 27-07-2013 / 19:09:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
+!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - org.GNOME.Accessibility'!
+
+_org_GNOME_Accessibility_AtkWrapper_componentAdded: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'componentAdded(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_componentRemoved: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'componentRemoved(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_dispatchKeyEvent: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'dispatchKeyEvent(Lorg/GNOME/Accessibility/AtkKeyEvent;)Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_emitSignal: this _: a1 _: a2 _: a3
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'emitSignal(Ljavax/accessibility/AccessibleContext;I[Ljava/lang/Object;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_focusNotify: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'focusNotify(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_initNativeLibrary: this
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'initNativeLibrary()Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_loadAtkBridge: this
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'loadAtkBridge()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_objectStateChange: this _: a1 _: a2 _: a3
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'objectStateChange(Ljavax/accessibility/AccessibleContext;Ljava/lang/Object;Z)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowActivate: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowActivate(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowClose: this _: a1 _: a2
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowClose(Ljavax/accessibility/AccessibleContext;Z)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowDeactivate: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowDeactivate(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowMaximize: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowMaximize(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowMinimize: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowMinimize(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowOpen: this _: a1 _: a2
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowOpen(Ljavax/accessibility/AccessibleContext;Z)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowRestore: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowRestore(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_GNOME_Accessibility_AtkWrapper_windowStateChange: this _: a1
+
+ <javanative: 'org/GNOME/Accessibility/AtkWrapper' name: 'windowStateChange(Ljavax/accessibility/AccessibleContext;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+! !
+
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - org.apache.tomcat.jni'!
_org_apache_tomcat_jni_Library_aprVersionString: this
@@ -13903,6 +14403,337 @@
^ JavaVM unimplementedNativeMethodSignal raise
! !
+!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - org.classpath.icedtea.pulseaudio'!
+
+_org_classpath_icedtea_pulseaudio_ContextEvent_init_constants: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/ContextEvent' name: 'init_constants()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_EventLoop_nativeUpdateSourcePortNameList: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/EventLoop' name: 'nativeUpdateSourcePortNameList()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_EventLoop_nativeUpdateTargetPortNameList: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/EventLoop' name: 'nativeUpdateTargetPortNameList()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_EventLoop_native_iterate: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/EventLoop' name: 'native_iterate(I)I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_EventLoop_native_setup: this _: a1 _: a2
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/EventLoop' name: 'native_setup(Ljava/lang/String;Ljava/lang/String;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_EventLoop_native_shutdown: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/EventLoop' name: 'native_shutdown()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Operation_init_constants: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Operation' name: 'init_constants()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Operation_native_get_state: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Operation' name: 'native_get_state()J'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Operation_native_ref: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Operation' name: 'native_ref()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Operation_native_unref: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Operation' name: 'native_unref()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_PulseAudioSourcePort_native_set_volume: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/PulseAudioSourcePort' name: 'native_set_volume(F)[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_PulseAudioSourcePort_native_update_volume: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/PulseAudioSourcePort' name: 'native_update_volume()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_PulseAudioTargetPort_native_set_volume: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/PulseAudioTargetPort' name: 'native_set_volume(F)[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_PulseAudioTargetPort_native_update_volume: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/PulseAudioTargetPort' name: 'native_update_volume()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_bytesInBuffer: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'bytesInBuffer()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_init_constants: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'init_constants()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_connect_playback: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_connect_playback(Ljava/lang/String;IIIIIJ[B[B)I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_connect_record: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_connect_record(Ljava/lang/String;IIIIIJ[B[B)I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_cork: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_cork(I)[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_disconnect: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_disconnect()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_drain: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_drain()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_drop: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_drop()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_flush: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_flush()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_buffer_attr: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_buffer_attr()Lorg/classpath/icedtea/pulseaudio/StreamBufferAttributes;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_context: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_context()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_device_index: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_device_index()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_device_name: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_device_name()Ljava/lang/String;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_index: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_index()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_latency: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_latency()J'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_sample_spec: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_sample_spec()Lorg/classpath/icedtea/pulseaudio/StreamSampleSpecification;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_state: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_state()J'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_get_time: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_get_time()J'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_is_corked: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_is_corked()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_is_suspended: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_is_suspended()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_new: this _: a1 _: a2 _: a3 _: a4 _: a5
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_new([BLjava/lang/String;Ljava/lang/String;II)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_peek: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_peek()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_readable_size: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_readable_size()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_set_buffer_attr: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_set_buffer_attr(Lorg/classpath/icedtea/pulseaudio/StreamBufferAttributes;)[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_set_name: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_set_name(Ljava/lang/String;)[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_trigger: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_trigger()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_unref: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_unref()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_updateTimingInfo: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_updateTimingInfo()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_update_sample_rate: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_update_sample_rate(I)[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_writable_size: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_writable_size()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_pa_stream_write: this _: a1 _: a2 _: a3
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_pa_stream_write([BII)I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_set_volume: this _: a1
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_set_volume(F)[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_org_classpath_icedtea_pulseaudio_Stream_native_update_volume: this
+
+ <javanative: 'org/classpath/icedtea/pulseaudio/Stream' name: 'native_update_volume()[B'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+! !
+
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - stx.libjava'!
_stx_libjava_ClassLoader_findClassS: this _:a1
@@ -13913,14 +14744,14 @@
nm := Java as_ST_String: a1.
(nm startsWith: 'SMALLTALK.') ifFalse:[
JavaVM
- throwClassNotFoundException:('No such smalltalk class (%1)' bindWith:nm).
+ throwClassNotFoundException:('No such smalltalk class (%1)' bindWith:nm).
^self
].
nm := nm copyFrom: 'SMALLTALK.' size + 1.
cls := Smalltalk at: nm asSymbol.
cls isNil ifTrue:[
JavaVM
- throwClassNotFoundException:('No such smalltalk class (%1)' bindWith:nm).
+ throwClassNotFoundException:('No such smalltalk class (%1)' bindWith:nm).
^self
].
^Reflection javaClassObjectForClass: cls.
@@ -13954,9 +14785,11 @@
_stx_libjava_tests_lang_MonitorTests_abort: this
<javanative: 'stx/libjava/tests/lang/MonitorTests' name: 'abort()V'>
- AbortOperationRequest raiseRequest.
+
+ AbortOperationRequest raiseRequest.
"Modified: / 10-09-2012 / 22:56:16 / m"
+ "Modified: / 08-10-2013 / 23:15:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - stx.libjava.tests.vm'!
@@ -13983,15 +14816,15 @@
"Modified: / 04-11-2011 / 21:50:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
-!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - stx.libjava.tools.compiler.ecj'!
-
-_stx_libjava_tools_compiler_ecj_CompilerEnvironment_findClassBytesForClass0: this _: jclass
-
- <javanative: 'stx/libjava/tools/compiler/ecj/CompilerEnvironment' name: 'findClassBytesForClass0(Ljava/lang/Class;)[B'>
+!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - stx.libjava.tools.environment'!
+
+_stx_libjava_tools_environment_Environment_findClassBytesForClass0: this _: jclass
+
+ <javanative: 'stx/libjava/tools/environment/Environment' name: 'findClassBytesForClass0(Ljava/lang/Class;)[B'>
^(JavaVM reflection classForJavaClassObject: jclass) classfileBytes
- "Modified: / 30-03-2013 / 00:43:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Created: / 11-09-2013 / 23:53:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - sun.awt'!
@@ -15985,6 +16818,20 @@
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - sun.font'!
+_sun_font_FileFontStrike__getGlyphImageFromWindows: this _: a1 _: a2 _: a3 _: a4 _: a5
+
+ <javanative: 'sun/font/FileFontStrike' name: '_getGlyphImageFromWindows(Ljava/lang/String;IIIZ)J'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_font_FileFontStrike_initNative: this
+
+ <javanative: 'sun/font/FileFontStrike' name: 'initNative()Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_sun_font_FontManager_getFont2D: this _: a1
<javanative: 'sun/font/FontManager' name: 'getFont2D(Ljava/awt/Font;)Lsun/font/Font2D;'>
@@ -17502,6 +18349,141 @@
^ JavaVM unimplementedNativeMethodSignal raise
! !
+!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - sun.jkernel'!
+
+_sun_jkernel_DownloadManager_addToTotalDownloadSize: this _: a1
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'addToTotalDownloadSize(I)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_askUserToRetryDownloadOrQuit: this _: a1
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'askUserToRetryDownloadOrQuit(I)Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_bundleInstallComplete: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'bundleInstallComplete()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_bundleInstallStart: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'bundleInstallStart()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_displayError: this _: a1 _: a2
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'displayError(ILjava/lang/String;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_downloadFromURLImpl: this _: a1 _: a2 _: a3 _: a4
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'downloadFromURLImpl(Ljava/lang/String;Ljava/io/File;Ljava/lang/String;Z)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_getCurrentProcessId: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'getCurrentProcessId()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_getDebugKey: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'getDebugKey()Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_getUrlFromRegistry: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'getUrlFromRegistry()Ljava/lang/String;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_getVisitorId0: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'getVisitorId0()Ljava/lang/String;'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_isIEProtectedMode: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'isIEProtectedMode()Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_isJBrokerRunning: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'isJBrokerRunning()Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_isWindowsVista: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'isWindowsVista()Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_launchJBroker: this _: a1
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'launchJBroker(Ljava/lang/String;)Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_moveDirWithBrokerImpl: this _: a1 _: a2
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'moveDirWithBrokerImpl(Ljava/lang/String;Ljava/lang/String;)Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_moveFileWithBrokerImpl: this _: a1 _: a2
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'moveFileWithBrokerImpl(Ljava/lang/String;Ljava/lang/String;)Z'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_postDownloadComplete: this
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'postDownloadComplete()V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_postDownloadError: this _: a1
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'postDownloadError(I)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
+_sun_jkernel_DownloadManager_startBackgroundDownloadWithBrokerImpl: this _: a1
+
+ <javanative: 'sun/jkernel/DownloadManager' name: 'startBackgroundDownloadWithBrokerImpl(Ljava/lang/String;)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+! !
+
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - sun.management'!
_sun_management_ClassLoadingImpl_setVerboseClass: this _: a1
@@ -17602,6 +18584,13 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_sun_management_HotSpotDiagnostic_dumpHeap0: this _: a1 _: a2
+
+ <javanative: 'sun/management/HotSpotDiagnostic' name: 'dumpHeap0(Ljava/lang/String;Z)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_sun_management_HotSpotDiagnostic_dumpHeap: this _: a1 _: a2
<javanative: 'sun/management/HotSpotDiagnostic' name: 'dumpHeap(Ljava/lang/String;Z)V'>
@@ -18096,7 +19085,12 @@
<javanative: 'sun/misc/Perf' name: 'createLong(Ljava/lang/String;IIJ)Ljava/nio/ByteBuffer;'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ | memory |
+
+ memory := JavaVM performance counters at: (Java as_ST_String: a1) ifAbsentPut:[ ByteArray new: 8].
+ ^JAVA java nio HeapByteBuffer new: memory with: 0 with: 8.
+
+ "Modified: / 20-02-2013 / 00:13:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_sun_misc_Perf_detach: this _: a1
@@ -18124,7 +19118,9 @@
<javanative: 'sun/misc/Perf' name: 'registerNatives()V'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ "Nothing to do here"
+
+ "Modified: / 11-02-2013 / 02:53:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_sun_misc_Signal_findSignal: this _:a1
@@ -18312,7 +19308,8 @@
int expected,
int new);
"
- | o offset expected real new ok |
+ | o offset expected real new ok isArray|
+
o := a1.
offset := a2.
"offset is long, so nativeContext at:3 is dummy nil!!!!!!"
@@ -18320,15 +19317,16 @@
new := a5.
OperatingSystem blockInterrupts.
- o isArray ifTrue:[
+ (isArray := o isArray) ifTrue:[
real := o at: offset.
] ifFalse:[
real := o instVarAt: offset.
].
(real == expected) ifTrue:[
- o isArray ifTrue:[
+ isArray ifTrue:[
o at: offset put: new.
] ifFalse:[
+ offset :=
o instVarAt: offset put: new.
].
ok := 1
@@ -18363,6 +19361,13 @@
"Modified (format): / 11-07-2012 / 10:25:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+_sun_misc_Unsafe_copyMemory: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
+
+ <javanative: 'sun/misc/Unsafe' name: 'copyMemory(Ljava/lang/Object;JLjava/lang/Object;JJ)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_sun_misc_Unsafe_defineClass: this _: a1 _: a2 _: a3
<javanative: 'sun/misc/Unsafe' name: 'defineClass(Ljava/lang/String;[BII)Ljava/lang/Class;'>
@@ -18886,7 +19891,7 @@
tout := nil.
].
] ifFalse:[
- "/ It's nanos in this case !!!!!!
+ "/ It's nanos in this case !!!!!!
tout := (millisOrNanos / 1000000) rounded
]
] ifFalse:[
@@ -19437,7 +20442,9 @@
<javanative: 'sun/misc/Unsafe' name: 'throwException(Ljava/lang/Throwable;)V'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ ^ JavaVM _ATHROW: a1.
+
+ "Modified: / 07-11-2013 / 23:41:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_sun_misc_Unsafe_tryMonitorEnter: this
@@ -19605,6 +20612,13 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_sun_nio_ch_DatagramChannelImpl_send0: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6
+
+ <javanative: 'sun/nio/ch/DatagramChannelImpl' name: 'send0(Ljava/io/FileDescriptor;JILjava/net/InetAddress;I)I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_sun_nio_ch_DatagramDispatcher_read0: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/nio/ch/DatagramDispatcher' name: 'read0(Ljava/io/FileDescriptor;JI)I'>
@@ -20082,6 +21096,13 @@
^ JavaVM unimplementedNativeMethodSignal raise
!
+_sun_nio_ch_Net_bind0: this _: a1 _: a2 _: a3 _: a4
+
+ <javanative: 'sun/nio/ch/Net' name: 'bind0(Ljava/io/FileDescriptor;ZLjava/net/InetAddress;I)V'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_sun_nio_ch_Net_bind: this _: a1 _: a2 _: a3
<javanative: 'sun/nio/ch/Net' name: 'bind(Ljava/io/FileDescriptor;Ljava/net/InetAddress;I)V'>
@@ -20112,6 +21133,13 @@
"Modified: / 10-05-2012 / 17:00:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+_sun_nio_ch_Net_isExclusiveBindAvailable: this
+
+ <javanative: 'sun/nio/ch/Net' name: 'isExclusiveBindAvailable()I'>
+
+ ^ JavaVM unimplementedNativeMethodSignal raise
+!
+
_sun_nio_ch_Net_localInetAddress: this _: a1
<javanative: 'sun/nio/ch/Net' name: 'localInetAddress(Ljava/io/FileDescriptor;)Ljava/net/InetAddress;'>
@@ -20483,6 +21511,28 @@
"Modified: / 30-01-2013 / 14:16:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+_sun_reflect_Reflection_getCallerClass0: this _: a1
+
+ <javanative: 'sun/reflect/Reflection' name: 'getCallerClass0(I)Ljava/lang/Class;'>
+
+ "/ Until there is hotspot @CallerSensitive support,
+ "/ depth must always be 2 to get the immediate caller
+ ^ self _sun_reflect_Reflection_getCallerClass: this _: 2
+
+ "Modified (comment): / 11-11-2013 / 21:18:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+_sun_reflect_Reflection_getCallerClass: this
+
+ <javanative: 'sun/reflect/Reflection' name: 'getCallerClass()Ljava/lang/Class;'>
+
+ "/ Until there is hotspot @CallerSensitive support,
+ "/ depth must always be 2 to get the immediate caller
+ ^ self _sun_reflect_Reflection_getCallerClass0: this _: 2
+
+ "Modified (comment): / 11-11-2013 / 21:18:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
_sun_reflect_Reflection_getCallerClass: this _:a1
<javanative: 'sun/reflect/Reflection' name: 'getCallerClass(I)Ljava/lang/Class;'>
@@ -20504,12 +21554,35 @@
framesToSkip := a1.
framesSkipped := 0.
frame := self nativeContext.
+
+ "The callstack here may look like:
+
+ (0 native ctx) JAVA::sun::reflect::Reflection(JAVA::sun::reflect::Reflection) >> getCallerClass()Ljava/lang/Class; {1380352} [0]
+ (1 ) JavaNativeMethod(CompiledCode) >> valueWithReceiver:arguments:selector:search:sender: [88]) {7286784} [17]
+ (2 ) JavaNativeMethod(JavaMethod) >> valueWithReceiver:arguments:selector:search:sender: [88]) {4497408} [7]
+ (3 ) JavaVM class >> _INVOKESTATIC_R: sun/reflect/Reflection.getCallerClass {4157440} [9]
+ (4 ) JAVA::sun::misc::Unsafe(JAVA::sun::misc::Unsafe) >> getUnsafe()Lsun/misc/Unsafe; {4501504} [88]
+
+ in case Reflection,getCallerClass() has been called from JIT-compiled code
+ and methodref to Reflection.getCallerClass() has not yet been resolved
+ (in that case JIT code sends #_INVOKESTATIC_R:. Care about this now.
+ "
+ frame sender selector == #valueWithReceiver:arguments:selector:search:sender: ifTrue:[
+ frame := frame sender.
+ frame sender selector == #valueWithReceiver:arguments:selector:search:sender: ifTrue:[
+ frame := frame sender.
+ ].
+ frame sender selector == #'_INVOKESTATIC_R:' ifTrue:[
+ frame := frame sender.
+ ].
+ ].
+
[ framesSkipped == framesToSkip ] whileFalse:[
frame := frame sender.
"Frames for java,lang.reflect.Method.invoke() does not count, sigh.
What a crappy implementation"
(frame selector == #'invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;'
- and:[ frame receiver class name = #'java/lang/reflect/Method']) ifFalse:[
+ and:[ frame receiver class binaryName = #'java/lang/reflect/Method']) ifFalse:[
framesSkipped := framesSkipped + 1
]
].
@@ -20523,7 +21596,7 @@
ifFalse:[nil]
"Created: / 25-10-2010 / 16:32:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 30-01-2013 / 14:12:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 18-01-2014 / 11:35:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
_sun_reflect_Reflection_getClassAccessFlags: this _:a1
@@ -20776,35 +21849,35 @@
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - sun.security.pkcs11'!
-_sun_security_pkcs11_Secmod_nssGetLibraryHandle: this _: a1
+_sun_security_pkcs11_Secmod_nssGetLibraryHandle: this _: a1
<javanative: 'sun/security/pkcs11/Secmod' name: 'nssGetLibraryHandle(Ljava/lang/String;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_Secmod_nssGetModuleList: this _: a1 _: a2
+_sun_security_pkcs11_Secmod_nssGetModuleList: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/Secmod' name: 'nssGetModuleList(J)Ljava/lang/Object;'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_Secmod_nssInit: this _: a1 _: a2 _: a3 _: a4
+_sun_security_pkcs11_Secmod_nssInit: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/security/pkcs11/Secmod' name: 'nssInit(Ljava/lang/String;JLjava/lang/String;)Z'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_Secmod_nssLoadLibrary: this _: a1
+_sun_security_pkcs11_Secmod_nssLoadLibrary: this _: a1
<javanative: 'sun/security/pkcs11/Secmod' name: 'nssLoadLibrary(Ljava/lang/String;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_Secmod_nssVersionCheck: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_Secmod_nssVersionCheck: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/Secmod' name: 'nssVersionCheck(JLjava/lang/String;)Z'>
@@ -20813,417 +21886,419 @@
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - sun.security.pkcs11.wrapper'!
-_sun_security_pkcs11_wrapper_PKCS11_C_CloseSession: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_CloseSession: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_CloseSession(J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_CopyObject: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_CopyObject: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_CopyObject(JJ[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_CreateObject: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_CreateObject: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_CreateObject(J[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Decrypt: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
+_sun_security_pkcs11_wrapper_PKCS11_C_Decrypt: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Decrypt(J[BII[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DecryptFinal: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_DecryptFinal: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DecryptFinal(JJ[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DecryptInit: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_DecryptInit: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DecryptInit(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DecryptUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12
+_sun_security_pkcs11_wrapper_PKCS11_C_DecryptUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DecryptUpdate(JJ[BIIJ[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DeriveKey: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6
+_sun_security_pkcs11_wrapper_PKCS11_C_DeriveKey: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DeriveKey(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DestroyObject: this _: a1 _: a2 _: a3 _: a4
+_sun_security_pkcs11_wrapper_PKCS11_C_DestroyObject: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DestroyObject(JJ)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DigestFinal: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_DigestFinal: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DigestFinal(J[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DigestInit: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_DigestInit: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DigestInit(JLsun/security/pkcs11/wrapper/CK_MECHANISM;)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DigestKey: this _: a1 _: a2 _: a3 _: a4
+_sun_security_pkcs11_wrapper_PKCS11_C_DigestKey: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DigestKey(JJ)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DigestSingle: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9
+_sun_security_pkcs11_wrapper_PKCS11_C_DigestSingle: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DigestSingle(JLsun/security/pkcs11/wrapper/CK_MECHANISM;[BII[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_DigestUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_DigestUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_DigestUpdate(JJ[BII)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Encrypt: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
+_sun_security_pkcs11_wrapper_PKCS11_C_Encrypt: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Encrypt(J[BII[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_EncryptFinal: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_EncryptFinal: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_EncryptFinal(JJ[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_EncryptInit: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_EncryptInit: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_EncryptInit(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_EncryptUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12
+_sun_security_pkcs11_wrapper_PKCS11_C_EncryptUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_EncryptUpdate(JJ[BIIJ[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Finalize: this _: a1
+_sun_security_pkcs11_wrapper_PKCS11_C_Finalize: this _: a1
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Finalize(Ljava/lang/Object;)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_FindObjects: this _: a1 _: a2 _: a3 _: a4
+_sun_security_pkcs11_wrapper_PKCS11_C_FindObjects: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_FindObjects(JJ)[J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_FindObjectsFinal: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_FindObjectsFinal: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_FindObjectsFinal(J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_FindObjectsInit: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_FindObjectsInit: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_FindObjectsInit(J[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GenerateKey: this _: a1 _: a2 _: a3 _: a4
+_sun_security_pkcs11_wrapper_PKCS11_C_GenerateKey: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GenerateKey(JLsun/security/pkcs11/wrapper/CK_MECHANISM;[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GenerateKeyPair: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_GenerateKeyPair: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GenerateKeyPair(JLsun/security/pkcs11/wrapper/CK_MECHANISM;[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)[J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GenerateRandom: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_GenerateRandom: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GenerateRandom(J[B)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetAttributeValue: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_GetAttributeValue: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetAttributeValue(JJ[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetInfo: this
+_sun_security_pkcs11_wrapper_PKCS11_C_GetInfo: this
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetInfo()Lsun/security/pkcs11/wrapper/CK_INFO;'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetMechanismInfo: this _: a1 _: a2 _: a3 _: a4
+_sun_security_pkcs11_wrapper_PKCS11_C_GetMechanismInfo: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetMechanismInfo(JJ)Lsun/security/pkcs11/wrapper/CK_MECHANISM_INFO;'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetMechanismList: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_GetMechanismList: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetMechanismList(J)[J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetOperationState: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_GetOperationState: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetOperationState(J)[B'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetSessionInfo: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_GetSessionInfo: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetSessionInfo(J)Lsun/security/pkcs11/wrapper/CK_SESSION_INFO;'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetSlotInfo: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_GetSlotInfo: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetSlotInfo(J)Lsun/security/pkcs11/wrapper/CK_SLOT_INFO;'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetSlotList: this _: a1
+_sun_security_pkcs11_wrapper_PKCS11_C_GetSlotList: this _: a1
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetSlotList(Z)[J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_GetTokenInfo: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_GetTokenInfo: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_GetTokenInfo(J)Lsun/security/pkcs11/wrapper/CK_TOKEN_INFO;'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Initialize: this _: a1
+_sun_security_pkcs11_wrapper_PKCS11_C_Initialize: this _: a1
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Initialize(Ljava/lang/Object;)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Login: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_Login: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Login(JJ[C)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Logout: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_C_Logout: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Logout(J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_OpenSession: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6
+_sun_security_pkcs11_wrapper_PKCS11_C_OpenSession: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_OpenSession(JJLjava/lang/Object;Lsun/security/pkcs11/wrapper/CK_NOTIFY;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SeedRandom: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_SeedRandom: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SeedRandom(J[B)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SetAttributeValue: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_SetAttributeValue: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SetAttributeValue(JJ[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SetOperationState: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_SetOperationState: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SetOperationState(J[BJJ)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Sign: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_Sign: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Sign(J[B)[B'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SignFinal: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_SignFinal: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SignFinal(JI)[B'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SignInit: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_SignInit: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SignInit(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SignRecover: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
+_sun_security_pkcs11_wrapper_PKCS11_C_SignRecover: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SignRecover(J[BII[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SignRecoverInit: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_SignRecoverInit: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SignRecoverInit(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_SignUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_SignUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_SignUpdate(JJ[BII)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_UnwrapKey: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_UnwrapKey: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_UnwrapKey(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J[B[Lsun/security/pkcs11/wrapper/CK_ATTRIBUTE;)J'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_Verify: this _: a1 _: a2 _: a3 _: a4
+_sun_security_pkcs11_wrapper_PKCS11_C_Verify: this _: a1 _: a2 _: a3 _: a4
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_Verify(J[B[B)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_VerifyFinal: this _: a1 _: a2 _: a3
+_sun_security_pkcs11_wrapper_PKCS11_C_VerifyFinal: this _: a1 _: a2 _: a3
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_VerifyFinal(J[B)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_VerifyInit: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_VerifyInit: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_VerifyInit(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_VerifyRecover: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
+_sun_security_pkcs11_wrapper_PKCS11_C_VerifyRecover: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_VerifyRecover(J[BII[BII)I'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_VerifyRecoverInit: this _: a1 _: a2 _: a3 _: a4 _: a5
+_sun_security_pkcs11_wrapper_PKCS11_C_VerifyRecoverInit: this _: a1 _: a2 _: a3 _: a4 _: a5
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_VerifyRecoverInit(JLsun/security/pkcs11/wrapper/CK_MECHANISM;J)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_VerifyUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_VerifyUpdate: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_VerifyUpdate(JJ[BII)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_C_WrapKey: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
+_sun_security_pkcs11_wrapper_PKCS11_C_WrapKey: this _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'C_WrapKey(JLsun/security/pkcs11/wrapper/CK_MECHANISM;JJ)[B'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_connect: this _: a1 _: a2
+_sun_security_pkcs11_wrapper_PKCS11_connect: this _: a1 _: a2
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'connect(Ljava/lang/String;Ljava/lang/String;)V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_disconnect: this
+_sun_security_pkcs11_wrapper_PKCS11_disconnect: this
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'disconnect()V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_finalizeLibrary: this
+_sun_security_pkcs11_wrapper_PKCS11_finalizeLibrary: this
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'finalizeLibrary()V'>
^ JavaVM unimplementedNativeMethodSignal raise
!
-_sun_security_pkcs11_wrapper_PKCS11_initializeLibrary: this
+_sun_security_pkcs11_wrapper_PKCS11_initializeLibrary: this
<javanative: 'sun/security/pkcs11/wrapper/PKCS11' name: 'initializeLibrary()V'>
- ^ JavaVM unimplementedNativeMethodSignal raise
+ "Nothing to do be default"
+
+ "Modified: / 23-09-2013 / 23:13:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'native - sun.security.provider'!
@@ -21317,11 +22392,11 @@
!JavaNativeMethodImpl_OpenJDK6 class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libjava/JavaNativeMethodImpl_OpenJDK6.st,v 1.7 2014-01-16 14:31:51 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libjava/JavaNativeMethodImpl_OpenJDK6.st,v 1.8 2015-01-28 02:10:50 vrany Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libjava/JavaNativeMethodImpl_OpenJDK6.st,v 1.7 2014-01-16 14:31:51 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libjava/JavaNativeMethodImpl_OpenJDK6.st,v 1.8 2015-01-28 02:10:50 vrany Exp $'
!
version_HG