blob: fc05401743236f0ffe644248c471e190a0a0e330 [file] [log] [blame]
<html>
<!-- Generated from apichanges.xml -->
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Change History for the Keyring API</title>
<link rel="stylesheet" href="prose.css" type="text/css">
</head>
<body>
<p class="overviewlink">
<a href="overview-summary.html" shape="rect">Overview</a>
</p>
<h1>Introduction</h1>
<p>This document lists changes made to the <a href="overview-summary.html" shape="rect">CHANGEME API</a>.</p>
<hr>
<h1>
<a name="list-all-apis">Index of APIs</a>
</h1>
<ul>
<li>
<a href="#keyring">Keyring API</a>
</li>
</ul>
<h1>
<a name="incompat-by-date">Incompatible changes by date</a>
</h1>
<p>Fuller descriptions of all changes can be found below (follow links).</p>
<p>Not all deprecations are listed here, assuming that the deprecated
APIs continue to essentially work. For a full deprecation list, please
consult the
<a href="deprecated-list.html">Javadoc</a>.</p>
<ul></ul>
<h1>
<a name="all-by-date">All changes by date</a>
</h1>
<ul>
<li>(Jan 6 '12) <a href="#edt">Keyring API usable from any thread</a>
</li>
<li>(Dec 11 '09) <a href="#initial">Keyring API created</a>
</li>
</ul>
<h1>
<a name="all-by-version">Changes by version</a>
</h1>
<p>
These API specification versions may be used to indicate that a module
requires a certain API feature in order to function. For example, if you
see here a feature you need which is labelled <samp>1.20</samp>, your
manifest should contain in its main attributes the line:
</p>
<pre>OpenIDE-Module-Module-Dependencies: org.netbeans.modules.keyring &gt; 1.20</pre>
<ul>
<li>
(1.10) <a href="#edt">Keyring API usable from any thread</a>
</li>
<li>
(1.0) <a href="#initial">Keyring API created</a>
</li>
</ul>
<h1>
<a name="all-by-class">Changes by affected class</a>
</h1>
<h2>
<a name="org.netbeans.api.keyring.Keyring"><code><span style="color:gray">org.netbeans.api.keyring.</span>Keyring</code></a>
</h2><ul><li>(Jan 6 '12) <a href="#edt">Keyring API usable from any thread</a>
</li></ul><hr>
<h1>
<a name="details-by-api">Details of all changes by API and date</a>
</h1>
<hr style="width:50%">
<h2>
<a name="keyring">Keyring API</a>
</h2>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="edt">Keyring API usable from any thread</a>
</h3>
<em>Jan 6 '12; API spec. version: 1.10; affected top-level classes: <a href="./org/netbeans/api/keyring/Keyring.html"><code>Keyring</code></a>; made by: phejl; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=206475">
#206475</a></em>
<br>
<p>
It hasn't been allowed to call the Keyring from EDT.
This change removes the limitation as the need to read
password from the UI is not so rare. To resolve this people
had to code custom threading solution to prevent possible
deadlock on fallback implementation of the keyring API.
</p>
<br>
<strong>Compatibility: </strong>
<p>
Existing callers should use the Keyring directly from
any thread and should not try to avoid EDT anymore.
</p>
<p>
SPI implementors should not be changed and they may
continue to assume that they will not be called directly
from EDT.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="initial">Keyring API created</a>
</h3>
<em>Dec 11 '09; API spec. version: 1.0; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=173413">
#173413</a></em>
<br>
<p>
A new API was created for securely storing user passwords.
Where possible it uses a native keyring.
</p>
<br>
<strong>Compatibility: </strong>
<p>
Modules formerly storing passwords in some other way should
not only begin using <code>Keyring</code>, but also delete any
passwords from the old storage as they are transferred.
</p>
<hr>
<p><span class="footnote">Built on September 14 2018.&nbsp;&nbsp;|&nbsp;&nbsp; Copyright &#169; 2017-2018 Apache Software Foundation. All Rights Reserved.</span></p>
</body>
</html>