| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
performance for single applet reload.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
getInstance(): No new JNLPClassLoader if uniqueKey satisfies
JNLPClassLoader.[get|create]Instance(..):
- Reuse uniqueKey, baseLoader from getInstance()
- Remove extLoader (same as baseLoader)
This is odd and sparked my eye while reusing the baseLoader (above).
JNLPClassLoader.getInstance(..):
- No new JNLPClassLoader if uniqueKey satisfies.
Why should we ? Enables reusing CL and impacts performance.
JNLPClassLoader.toString(): Added for better debugging.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DISCLAIMER:
- Only new Applet3 applets are supported under X11 for now
- AWT Applet are disabled
- Namespace com.jogamp.* and jogamp.* is only chosen
to indicate new AWT-less code
- Applet3 code path does not invoke any AWT function
- JNLP code path still utilizes AWT/Swing (UIs, ..)
TODO:
- Refactor AWT dependencies properly via UI interfaces ?
- Decide whether we shall merge netx and plugin namespace ?
IMHO the right thing to do, jumping hoops due to separation.
- Add support for Windows, OSX, Wayland, ..
Applet3:
- New AWT-less Applet3 interfaces are:
- com.jogamp.plugin.applet.Applet3
- User implements
- com.jogamp.plugin.applet.Applet3Context
- Plugin implements
- com.jogamp.plugin.ui.NativeWindowUpstream
- Plugin window, aka browser parent of Applet3
- com.jogamp.plugin.ui.NativeWindowDownstream
- Applet3 user window
- User interfaces are exported as:
- plugin3-public.jar
- plugin3-public-src.zip
|
|
|
|
| |
Jnlp runtime now correctly dies in case of ConfigurationException and initialisation of config is failing to defaults instead of die with NoClassDefFoundError
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The OpenJDK8 javadoc parser is much more strict and raises
erorrs on marlformed html, incorrect parameter names and
incorrect throws declerations.
2014-01-23 Omair Majid <omajid@redhat.com>
* netx/net/sourceforge/jnlp/JNLPFile.java,
* netx/net/sourceforge/jnlp/NetxPanel.java,
* netx/net/sourceforge/jnlp/cache/CacheLRUWrapper.java,
* netx/net/sourceforge/jnlp/cache/CacheUtil.java,
* netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java,
* netx/net/sourceforge/jnlp/config/DirectoryValidator.java,
* netx/net/sourceforge/jnlp/config/Setting.java,
* netx/net/sourceforge/jnlp/controlpanel/AdvancedProxySettingsDialog.java,
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java,
* netx/net/sourceforge/jnlp/runtime/JNLPRuntime.java,
* netx/net/sourceforge/jnlp/runtime/RhinoBasedPacEvaluator.java,
* netx/net/sourceforge/jnlp/security/SecurityDialogs.java,
* netx/net/sourceforge/jnlp/security/VariableX509TrustManager.java,
* netx/net/sourceforge/jnlp/services/XSingleInstanceService.java,
* netx/net/sourceforge/jnlp/util/FileUtils.java,
* netx/net/sourceforge/jnlp/util/JarFile.java,
* netx/net/sourceforge/nanoxml/XMLElement.java,
* netx/net/sourceforge/nanoxml/XMLParseException.java,
* plugin/icedteanp/java/sun/applet/PluginStreamHandler.java: Fix incorrect
parameter names, throws declerations and malformed html in javadocs.
|
|
|
|
|
|
|
|
|
|
| |
Resolve deadlock issue in JNLPClassLoader. See
http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-December/025546.html
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (loadClassLock)
removed. (available, jarIndexes, classpaths, jarEntries, jarLocationSecurityMap)
fields wrapped in Collections.synchronized*() to provide atomic read/write.
Synchronized on while iterating over these collections. (loadClass) no longer
uses implicit JNLPClassLoader instance lock nor dedicated loadClassLock object.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Override
After this clean up only "internal proprietary API and may be removed in a future release" warnings remain fro make check. Please keep itw in this way :)
remaining issues:
icedtea-web/netx/net/sourceforge/jnlp/cache/ResourceTracker.java:357: warning: [deprecation] toURL() in File has been deprecated
icedtea-web/netx/net/sourceforge/jnlp/cache/CacheUtil.java:128: warning: [deprecation] toURL() in File has been deprecated
icedtea-web/netx/net/sourceforge/jnlp/runtime/Boot.java:261: warning: [deprecation] toURL() in File has been deprecated
There have been a lot of work around cach x file x url escaping, and as main difference between file.tourl and file.touri.tourl is escapin, I rather left it.
icedtea-web/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java:804: warning: [deprecation] Ref in sun.misc has been deprecated
icedtea-web/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java:121: warning: [deprecation] Ref in sun.misc has been deprecated
What can be done?
icedtea-web/netx/net/sourceforge/jnlp/browser/BrowserAwareProxySelector.java:205: warning: [fallthrough] possible fall-through into case
icedtea-web/netx/net/sourceforge/jnlp/browser/BrowserAwareProxySelector.java:211: warning: [fallthrough] possible fall-through into case
This have to be fixed
|
|
|
|
|
|
| |
Fix/new feature for PR1592. Each JAR in partially signed applets is
assigned its own security level, rather than forcing the entire applet to
run sandboxed.
|
| |
|
|
|
|
|
|
|
|
| |
manifest
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (getManifestAttribute) added check fo null manifest to prevent npe.
* /tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPClassLoaderTest.java: added test for npe from getManifestAttribute
* tests/test-extensions/net/sourceforge/jnlp/util/FileTestUtils.java: (createJarWithContents) enhanced to be able to create jar without manifest.
|
| |
|
| |
|
|
|
|
|
|
| |
Iteration over Enumerations refactored to instead view Enumerations as Lists
using Collections library. Type parameters added to some local variables and
return types. For-loops refactored into for-each-loops.
|
|
|
|
| |
http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/manifest.html#app_name
|
|
|
|
| |
netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java.
|
| |
|
|
|
|
|
|
| |
* netx/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java:
(addPermission) avoid NPE in JNLPClassLoader#getPermissions with debug
enabled
|
|
|
|
|
|
| |
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java:
(initializeResources) ask for user approval rather than throwing
LaunchException for signed applets with external main-class
|
|
|
|
|
|
|
|
|
|
| |
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java:
(getMainClassName) is now calling (getManifestAttribute)
(getManifestAttribute) new method, extract named attribute from url
specified jar. Called by (checkForAttributeInJars)
(checkForMain) is now calling (checkForAttributeInJars). Also logic of
(checkForAttributeInJars) was taken from here.
(checkForAttributeInJars) new method, read specific attribute from
|
|
|
|
|
| |
* netx/net/sourceforge/jnlp/runtime/JNLPRuntime.java: (isPluginDebug) made private to prevent confusion.
* plugin/icedteanp/java/sun/applet/PluginDebug.java: (DEBUG) initialized from JNLPRuntime.isDebug instead of incorrect JNLPRuntime.isPluginDebug.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New lock used for synchronizing JNLPClassLoader#loadClass(String) to avoid
deadlock condition when multiple applets are being loaded simultaneously.
Regression test included.
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (loadClassLock)
private member for locking of loadClass method. (loadClass) synchronizes
using new lock rather than instance intrinsic lock to avoid RH976833
deadlock
* tests/reproducers/custom/JNLPClassLoaderDeadlock/testcases/JNLPClassLoaderDeadlockTest.java:
new test for multiple applet deadlock condition
* tests/reproducers/custom/JNLPClassLoaderDeadlock/resources/JNLPClassLoaderDeadlock.html:
same
* tests/reproducers/custom/JNLPClassLoaderDeadlock/srcs/JNLPClassLoaderDeadlock_1.java:
same
* tests/reproducers/custom/JNLPClassLoaderDeadlock/srcs/JNLPClassLoaderDeadlock_2.java:
same
* tests/reproducers/custom/JNLPClassLoaderDeadlock/srcs/Makefile: same
|
|
|
|
|
|
|
| |
Also move duplicate code for selecting a host and port depending on the
protocol into JNLPProxySelector.getFromArguments. The semantics of
'sameProxy' are different between BrowserAwareProxySelector and
JNLPProxySelector; the socks proxy is included in firefox.
|
| |
|
|
|
|
|
|
|
|
| |
If there is a SOCKS proxy specified, use it for https, http,
and ftp protocols too (as a fallback).
'sameProxy' now affects the https, http and ftp protocols,
but not the socket protocol.
|
|
|
|
|
|
|
|
|
|
| |
This contains one functional change:
- String host = uri.getSchemeSpecificPart().split(":")[0];
+ String host = uri.getHost();
Given the URI of "socket://example.org", the first line
evaluates to "//example.org", while the second one (correctly)
evaluates to "example.org".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Treat jnlp.packEnabled and jnlp.versionEnabled just like other
properties that can be set in one resource element and
inherited/filtered in others.
2013-09-09 Omair Majid <omajid@redhat.com>
* netx/net/sourceforge/jnlp/JNLPFile.java
(getDownloadOptionsForJar): Rename to ...
(getDownloadOptions): New method. Look up jnlp.packEnabled and
jnlp.versionEnabled in any resources element.
* netx/net/sourceforge/jnlp/PluginBridge.java
(getDownloadOptionsForJar): Rename to ...
(getDownloadOptions): New method.
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
(initializeResources): Invoke file.getDownloadResources.
(getDownloadOptionsForJar): Remove.
* tests/netx/unit/net/sourceforge/jnlp/JNLPFileTest.java
(testDownloadOptionsAppliedEverywhere): New method.
(testDownloadOptionsFilteredOut): New method.
|
|
|
|
| |
applet tags
|
|
|
|
| |
elsewhere which handled this
|
|
|
|
| |
(RH982558)
|
| |
|
| |
|
|
|
|
| |
of PR1473
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|