diff --git a/eventadmin/impl/LICENSE.sun b/eventadmin/impl/LICENSE.sun
new file mode 100644
index 0000000..a235edb
--- /dev/null
+++ b/eventadmin/impl/LICENSE.sun
@@ -0,0 +1,44 @@
+TECHNOLOGY LICENSE FROM SUN MICROSYSTEMS, INC. TO DOUG LEA
+
+Whereas Doug Lea desires to utlized certain Java Software technologies
+in the util.concurrent technology; and
+
+Whereas Sun Microsystems, Inc. (“Sun”) desires that Doug Lea utilize
+certain Java Software technologies in the util.concurrent technology;
+
+Therefore the parties agree as follows, effective May 31, 2002:
+
+“Java Software technologies” means
+    classes/java/util/ArrayList.java, and
+    classes/java/util/HashMap.java.
+
+The Java Software technologies are Copyright (c) 1994-2000 Sun Microsystems,
+Inc. All rights reserved.
+
+Sun hereby grants Doug Lea a non-exclusive, worldwide, non-transferrable
+license to use, reproduce, create derivate works of, and distribute the
+Java Software and derivative works thereof in source and binary forms as
+part of a larger work, and to sublicense the right to use, reproduce and
+distribute the Java Software and Doug Lea's derivative works as the part
+of larger works through multiple tiers of sublicensees provided that the
+following conditions are met:
+
+-Neither the name of or trademarks of Sun may be used to endorse or promote
+products including or derived from the Java Software technology without
+specific prior written permission; and
+-Redistributions of source or binary code must contain the above copyright
+notice, this notice and and the following disclaimers:
+
+This software is provided "AS IS," without a warranty of any kind. ALL
+EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING
+ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
+OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN MICROSYSTEMS, INC. AND ITS
+LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A
+RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES.
+IN NO EVENT WILL SUN MICROSYSTEMS, INC. OR ITS LICENSORS BE LIABLE FOR ANY
+LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,
+INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY
+OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN
+IF SUN MICROSYSTEMS, INC. HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+You acknowledge that Software is not designed,licensed or intended for use
+in the design, construction, operation or maintenance of any nuclear facility.
diff --git a/eventadmin/impl/NOTICE b/eventadmin/impl/NOTICE
index 0d51163..7ee998f 100644
--- a/eventadmin/impl/NOTICE
+++ b/eventadmin/impl/NOTICE
@@ -1,4 +1,4 @@
-Apache Felix EventAdmin
+Apache Felix Event Admin
 Copyright 2006-2010 The Apache Software Foundation
 
 This product includes software developed at
@@ -7,4 +7,9 @@
 This product includes software developed at
 The OSGi Alliance (http://www.osgi.org/).
 Copyright (c) OSGi Alliance (2000, 2009).
-Licensed under the Apache License 2.0. 
+Licensed under the Apache License 2.0.
+
+This product includes software developed at
+Sun Microsystems, Inc.
+Copyright (c) 1994-2000.
+Licensed under a BSD license.
