aboutsummaryrefslogtreecommitdiff
path: root/website/features
diff options
context:
space:
mode:
authorRoel Spilker <r.spilker@gmail.com>2009-07-18 01:52:56 +0200
committerRoel Spilker <r.spilker@gmail.com>2009-07-18 01:52:56 +0200
commit55dd52942e11dae5510a5a4b261b296151532e1e (patch)
tree724a11cdb8eb715847de805713dc0f7e03fde04a /website/features
parentde15a9d760d215b285d74a47184ca4e49c6c9268 (diff)
parenta61efb8db4904a848ba69f3e87747db5883693c1 (diff)
downloadlombok-55dd52942e11dae5510a5a4b261b296151532e1e.tar.gz
lombok-55dd52942e11dae5510a5a4b261b296151532e1e.tar.bz2
lombok-55dd52942e11dae5510a5a4b261b296151532e1e.zip
Merge branch 'master' of git@github.com:rzwitserloot/lombok
Diffstat (limited to 'website/features')
-rw-r--r--website/features/Cleanup.html63
-rw-r--r--website/features/Data.html8
-rw-r--r--website/features/GetterSetter.html7
-rw-r--r--website/features/clear.gifbin0 -> 43 bytes
-rw-r--r--website/features/features.css29
-rw-r--r--website/features/index.html8
6 files changed, 99 insertions, 16 deletions
diff --git a/website/features/Cleanup.html b/website/features/Cleanup.html
new file mode 100644
index 00000000..582412cd
--- /dev/null
+++ b/website/features/Cleanup.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <link rel="stylesheet" type="text/css" href="../logi/reset.css" />
+ <link rel="stylesheet" type="text/css" href="features.css" />
+ <link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" />
+ <meta name="description" content="Spice up your java" />
+ <title>@Cleanup</title>
+ <!--[if lt IE 7]><script type="text/javascript" src="logi/iepngfix_tilebg.js"></script><![endif]-->
+</head><body><div id="pepper">
+ <div class="minimumHeight"></div>
+ <div class="meat">
+ <div class="header"><a href="../index.html">Project Lombok</a></div>
+ <h1>@Cleanup</h1>
+ <div class="byline">Automatic resource management: Call your <code>close()</code> methods safely with no hassle.</div>
+ <div class="overview">
+ <h3>Overview</h3>
+ <p>
+ You can use <code>@Cleanup</code> to ensure a given resource is automatically cleaned up before the code execution path exits your
+ current scope. You do this by annotating any local variable declaration with the <code>@Cleanup</code> annotation like so:<br />
+ <code>@Cleanup InputStream in = new FileInputStream("some/file");</code><br />
+ As a result, at the end of the scope you're in, <code>in.close()</code> is called. This call is guaranteed to run by way of a
+ try/finally construct. Look at the example below to see how this works.
+ </p><p>
+ If the type of object you'd like to cleanup does not have a <code>close()</code> method, but some other no-argument method, you can
+ specify the name of this method like so:<br />
+ <code>@Cleanup("dispose") org.eclipse.swt.widgets.CoolBar bar = new CoolBar(parent, 0);</code><br />
+ By default, the cleanup method is presumed to be <code>close()</code>. A cleanup method that takes argument cannot be called via
+ <code>@Cleanup</code>.
+ </p>
+ </div>
+ <div class="snippets">
+ <div class="pre">
+ <h3>With Lombok</h3>
+ <div class="snippet">@HTML_PRE@</div>
+ </div>
+ <div class="sep"></div>
+ <div class="post">
+ <h3>Vanilla Java</h3>
+ <div class="snippet">@HTML_POST@</div>
+ </div>
+ </div>
+ <div style="clear: left;"></div>
+ <div class="overview">
+ <h3>Small print</h3><div class="smallprint">
+ <p>
+ If your code throws an exception, and the cleanup method call that is then triggered also throws an exception, then the original exception
+ is hidden by the exception thrown by the cleanup call. You should <em>not</em> rely on this 'feature'. Preferably, lombok would like to generate
+ code so that, if the main body has thrown an exception, any exception thrown by the close call is silently swallowed (but if the main body
+ exited in any other way, exceptions by the close call will not be swallowed). The authors of lombok do not currently know of a feasible way
+ to implement this scheme, but if java updates allow it, or we find a way, we'll fix it.
+ </p><p>
+ You do still need to handle any exception that the cleanup method can generate!
+ </p>
+ </div>
+ </div>
+ <div class="footer">
+ <a href="index.html">Back to features</a> | <a href="Data.html">Previous feature (@Data)</a> | <a href="Synchronized.html">Next feature (@Synchronized)</a><br />
+ <span class="copyright">Copyright &copy; 2009 Reinier Zwitserloot and Roel Spilker, licensed under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT licence</a>.</span>
+ </div>
+ <div style="clear: both;"></div>
+ </div>
+</div></body></html>
diff --git a/website/features/Data.html b/website/features/Data.html
index 23f9cea8..0a6246bb 100644
--- a/website/features/Data.html
+++ b/website/features/Data.html
@@ -8,10 +8,12 @@
<title>@Data</title>
<!--[if lt IE 7]><script type="text/javascript" src="logi/iepngfix_tilebg.js"></script><![endif]-->
</head><body><div id="pepper">
+ <div class="minimumHeight"></div>
<div class="meat">
- <div class="minimumHeight"></div>
<div class="header"><a href="../index.html">Project Lombok</a></div>
<h1>@Data</h1>
+ <div class="byline">'struct' for java: Automatically generate <code>toString</code>, <code>hashCode</code>, <code>equals</code>, a constructor, and getters and setters
+ from just the fields in your class.</div>
<div class="overview">
<h3>Overview</h3>
<p>
@@ -71,10 +73,10 @@
</p>
</div>
</div>
- <footer>
+ <div class="footer">
<a href="index.html">Back to features</a> | <a href="GetterSetter.html">Previous feature (@Getter / @Setter)</a> | <a href="Cleanup.html">Next feature (@Cleanup)</a><br />
<span class="copyright">Copyright &copy; 2009 Reinier Zwitserloot and Roel Spilker, licensed under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT licence</a>.</span>
- </footer>
+ </div>
<div style="clear: both;"></div>
</div>
</div></body></html>
diff --git a/website/features/GetterSetter.html b/website/features/GetterSetter.html
index e865cfff..70b60f38 100644
--- a/website/features/GetterSetter.html
+++ b/website/features/GetterSetter.html
@@ -8,10 +8,11 @@
<title>@Getter and @Setter</title>
<!--[if lt IE 7]><script type="text/javascript" src="logi/iepngfix_tilebg.js"></script><![endif]-->
</head><body><div id="pepper">
+ <div class="minimumHeight"></div>
<div class="meat">
- <div class="minimumHeight"></div>
<div class="header"><a href="../index.html">Project Lombok</a></div>
<h1>@Getter and @Setter</h1>
+ <div class="byline">Never write <code>public int getFoo() {return foo;}</code> again.</div>
<div class="overview">
<h3>Overview</h3>
<p>
@@ -51,10 +52,10 @@
</p>
</div>
</div>
- <footer>
+ <div class="footer">
<a href="index.html">Back to features</a> | <span class="disabled">Previous feature</span> | <a href="Data.html">Next feature (@Data)</a><br />
<span class="copyright">Copyright &copy; 2009 Reinier Zwitserloot and Roel Spilker, licensed under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT licence</a>.</span>
- </footer>
+ </div>
<div style="clear: both;"></div>
</div>
</div></body></html>
diff --git a/website/features/clear.gif b/website/features/clear.gif
new file mode 100644
index 00000000..35d42e80
--- /dev/null
+++ b/website/features/clear.gif
Binary files differ
diff --git a/website/features/features.css b/website/features/features.css
index f2eff7fc..7edaf769 100644
--- a/website/features/features.css
+++ b/website/features/features.css
@@ -12,6 +12,10 @@ body {
background-position: 50px 20px;
}
+* html #pepper {
+ background: none;
+}
+
.meat {
padding: 0px 48px;
}
@@ -22,20 +26,33 @@ body {
left: 30px;
}
-.meat .minimumHeight {
+.minimumHeight {
height: 700px;
- width: 5px;
+ width: 1px;
float: right;
}
+* html .minimumHeight {
+ height: 0px;
+}
+
h1 {
+ padding: 8px 0 10px 0;
+ font-size: 20px;
width: 100%;
text-align: center;
}
+.byline {
+ width: 100%;
+ text-align: center;
+ font-style: italic;
+ font-size: 1.3em;
+}
+
.index {
font-size: 1.2em;
- margin: 64px 0px 32px 64px;
+ margin: 48px 0px 32px 64px;
}
.index dt {
@@ -101,7 +118,7 @@ h1 {
display: none;
}
-footer {
+.footer {
clear: left;
margin: 0 auto 0 auto;
padding: 16px 0 16px 0;
@@ -109,11 +126,11 @@ footer {
text-align: center;
}
-footer .disabled {
+.footer .disabled {
color: #aaa;
}
-footer .copyright {
+.footer .copyright {
color: #555;
font-size: 11px;
font-style: italic;
diff --git a/website/features/index.html b/website/features/index.html
index c270f4e3..f7851972 100644
--- a/website/features/index.html
+++ b/website/features/index.html
@@ -6,10 +6,10 @@
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" />
<meta name="description" content="Spice up your java" />
<title>Lombok feature overview</title>
- <!--[if lt IE 7]><script type="text/javascript" src="logi/iepngfix_tilebg.js"></script><![endif]-->
+ <!--[if lt IE 7]><script type="text/javascript" src="../logi/iepngfix_tilebg.js"></script><![endif]-->
</head><body><div id="pepper">
+ <div class="minimumHeight"></div>
<div class="meat">
- <div class="minimumHeight"></div>
<div class="header"><a href="../index.html">Project Lombok</a></div>
<h1>Lombok features</h1>
<div class="index overview">
@@ -27,9 +27,9 @@
<dd>To boldly throw checked exceptions where no one has thrown them before!</dd>
</dl>
</div>
- <footer>
+ <div class="footer">
<span class="copyright">Copyright &copy; 2009 Reinier Zwitserloot and Roel Spilker, licensed under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT licence</a>.</span>
- </footer>
+ </div>
<div style="clear: both;"></div>
</div>
</div></body></html>