You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@river.apache.org by jc...@apache.org on 2009/09/27 02:15:08 UTC

svn commit: r819236 [1/6] - in /incubator/river/jtsk/trunk: ./ examples/ examples/hello/ examples/hello/config/ examples/hello/config/META-INF/ examples/hello/prebuiltkeys/ examples/hello/scripts/ examples/hello/src/ examples/hello/src/com/ examples/he...

Author: jcosters
Date: Sun Sep 27 00:15:03 2009
New Revision: 819236

URL: http://svn.apache.org/viewvc?rev=819236&view=rev
Log:
RIVER-301: Moved hello example to its own directory and added it to the build process

Added:
    incubator/river/jtsk/trunk/examples/
    incubator/river/jtsk/trunk/examples/hello/   (with props)
    incubator/river/jtsk/trunk/examples/hello/build.xml   (with props)
    incubator/river/jtsk/trunk/examples/hello/client.mf   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/
    incubator/river/jtsk/trunk/examples/hello/config/META-INF/
    incubator/river/jtsk/trunk/examples/hello/config/META-INF/PREFERRED.LIST   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/activatable-jeri-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/activatable-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/client.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/client.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/confirming-jeri-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/confirming-krb-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/confirming-ssl-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/dynamic-policy.security-properties   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix-group.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/jeri-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix-group.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/jrmp-reggie.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/jrmp-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-client.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-client.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-client.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-phoenix-group.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-phoenix.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-phoenix.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-phoenix.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-reggie.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-reggie.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-reggie.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-server.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/krb-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/logging.properties   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/phoenix.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/reggie.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-client.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-client.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-client.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-phoenix-group.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-phoenix.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-phoenix.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-phoenix.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-reggie.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-reggie.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-reggie.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-server.login   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/ssl-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-activatable-jeri-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-activatable-krb-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-activatable-krb-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-activatable-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-activatable-ssl-server.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-activatable-ssl-server.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-krb-reggie.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-reggie.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start-ssl-reggie.config   (with props)
    incubator/river/jtsk/trunk/examples/hello/config/start.policy   (with props)
    incubator/river/jtsk/trunk/examples/hello/index.html   (with props)
    incubator/river/jtsk/trunk/examples/hello/krb-setup.html   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/client.cert   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/client.keystore   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/phoenix.cert   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/phoenix.keystore   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/phoenix.password   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/reggie.cert   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/reggie.keystore   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/reggie.password   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/server.cert   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/server.keystore   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/server.password   (with props)
    incubator/river/jtsk/trunk/examples/hello/prebuiltkeys/truststore   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/
    incubator/river/jtsk/trunk/examples/hello/scripts/activatable-jeri-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/activatable-jeri-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/activatable-krb-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/activatable-krb-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/activatable-ssl-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/activatable-ssl-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/client.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/client.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/confirming-jeri-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/confirming-jeri-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/confirming-krb-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/confirming-krb-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/confirming-ssl-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/confirming-ssl-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/httpd.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/httpd.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jeri-phoenix.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jeri-phoenix.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jeri-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jeri-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jrmp-phoenix.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jrmp-phoenix.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jrmp-reggie.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jrmp-reggie.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jrmp-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/jrmp-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-client.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-client.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-phoenix.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-phoenix.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-reggie.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-reggie.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-setenv.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/krb-setenv.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-client.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-client.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-phoenix.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-phoenix.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-reggie.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-reggie.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-server.bat   (with props)
    incubator/river/jtsk/trunk/examples/hello/scripts/ssl-server.sh   (with props)
    incubator/river/jtsk/trunk/examples/hello/server-act.mf   (with props)
    incubator/river/jtsk/trunk/examples/hello/server.mf   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/
    incubator/river/jtsk/trunk/examples/hello/src/com/
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/ActivatableServer.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/Client.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/ConfirmingILFactory.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/ConfirmingInvocationHandler.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/Hello.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/MdClassAnnotationProvider.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/Proxy.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/Server.java   (with props)
    incubator/river/jtsk/trunk/examples/hello/src/com/sun/jini/example/hello/ServerPermission.java   (with props)
Modified:
    incubator/river/jtsk/trunk/   (props changed)
    incubator/river/jtsk/trunk/build.xml
    incubator/river/jtsk/trunk/common.xml
    incubator/river/jtsk/trunk/qa/build.xml

Propchange: incubator/river/jtsk/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sun Sep 27 00:15:03 2009
@@ -1 +1 @@
-/incubator/river/jtsk/skunk/jcosters:765902-766114
+/incubator/river/jtsk/skunk/jcosters:765902-766476

Modified: incubator/river/jtsk/trunk/build.xml
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/build.xml?rev=819236&r1=819235&r2=819236&view=diff
==============================================================================
--- incubator/river/jtsk/trunk/build.xml (original)
+++ incubator/river/jtsk/trunk/build.xml Sun Sep 27 00:15:03 2009
@@ -75,7 +75,7 @@
 		depends="all">
         <mkdir dir="${dist.dir}"/>
         <delete file="${bin.zip.bundle}"/>
-        <zip destfile="${bin.zip.bundle}">
+        <zip destfile="${bin.zip.bundle}" roundup="yes">
             <zipfileset dir="${basedir}" prefix="${product.name}">
                 <include name="index.html"/>
                 <include name="DISCLAIMER"/>
@@ -98,6 +98,17 @@
                 <include name="${configentry}/**"/>
                 <include name="tools/**"/>
             </zipfileset>
+            <zipfileset dir="${basedir}/examples" prefix="${product.name}/examples">
+                <include name="**/lib/**"/>
+                <include name="**/config/**"/>
+                <include name="**/prebuiltkeys/**"/>
+                <include name="**/scripts/**"/>
+                <include name="**/*.html"/>
+            </zipfileset>
+            <zipfileset dir="${basedir}/examples"
+				    prefix="${product.name}/examples"
+				    includes="**/*.sh"
+				    filemode="755"/>
             <!-- TODO create separate bin distribution for the qa tests -->
             <!--<zipfileset dir="${basedir}/qa" prefix="${product.name}/qa">
                 <include name="${lib}/**"/>
@@ -131,6 +142,17 @@
                 <include name="${configentry}/**"/>
                 <include name="tools/**"/>
             </tarfileset>
+            <tarfileset dir="${basedir}/examples" prefix="${product.name}/examples">
+                <include name="**/lib/**"/>
+                <include name="**/config/**"/>
+                <include name="**/prebuiltkeys/**"/>
+                <include name="**/scripts/**"/>
+                <include name="**/*.html"/>
+            </tarfileset>
+            <tarfileset dir="${basedir}/examples"
+				    prefix="${product.name}/examples"
+				    includes="**/*.sh"
+				    filemode="755"/>
             <!-- TODO create separate bin distribution for the qa tests -->
             <!--<tarfileset dir="${basedir}/qa" prefix="${product.name}/qa">
                 <include name="${lib}/**"/>
@@ -145,7 +167,7 @@
     <target name="release-src" description="Create a source release">
         <mkdir dir="${dist.dir}"/>
         <delete file="${src.zip.bundle}"/>
-        <zip destfile="${src.zip.bundle}">
+        <zip destfile="${src.zip.bundle}" roundup="yes">
             <zipfileset dir="${basedir}" prefix="${product.name}" >
                 <include name="index.html"/>
                 <include name="build.xml"/>
@@ -168,9 +190,14 @@
                 <exclude name="${src}/**/*.sh"/>
                 <include name="tools/**"/>
             </zipfileset>
-            <zipfileset dir="${basedir}"
-				    prefix="${product.name}"
-				    includes="${src}/**/*.sh"
+            <zipfileset dir="${basedir}/examples" prefix="${product.name}/examples">
+                <include name="**"/>
+                <exclude name="**/lib/"/>
+                <exclude name="**/build/"/>
+            </zipfileset>
+            <zipfileset dir="${basedir}/examples"
+				    prefix="${product.name}/examples"
+				    includes="**/*.sh"
 				    filemode="755"/>
             <!-- TODO investigate the source under the jtreg directory -->
             <zipfileset dir="${basedir}/qa" prefix="${product.name}/qa">
@@ -208,6 +235,15 @@
                 <include name="${src}/**"/>
                 <include name="tools/**"/>
             </tarfileset>
+            <tarfileset dir="${basedir}/examples" prefix="${product.name}/examples">
+                <include name="**"/>
+                <exclude name="**/lib/"/>
+                <exclude name="**/build/"/>
+            </tarfileset>
+            <tarfileset dir="${basedir}/examples"
+				    prefix="${product.name}/examples"
+				    includes="**/*.sh"
+				    filemode="755"/>
             <!-- TODO investigate the source under the jtreg directory -->
             <tarfileset dir="${basedir}/qa" prefix="${product.name}/qa">
                 <include name="${src}/**"/>
@@ -400,7 +436,7 @@
 		depends="river.jars,
             toolswrappers.jars,
             services.jars,
-            examples.jars" />
+            browser.jars" />
 
     <target name="river.jars" depends="stubs,
             jini-core.jar,
@@ -438,14 +474,9 @@
             sharedvm.jar,
             start.jar" />
 
-    <target name="examples.jars" depends="services.jars,
+    <target name="browser.jars" depends="services.jars,
             browser.jar,
-            browser-dl.jar,
-            client.jar,
-			mdprefld.jar,
-			server.jar,
-			server-act.jar,
-			server-dl.jar" />
+            browser-dl.jar" />
 
     <target name="compile" description="Build classes"
 		depends="copy-resources">
@@ -467,7 +498,7 @@
     <target name="stubs" description="Generate stubs"
 		depends="compile, browser.stubs, fiddler.stubs, mahalo.stubs, 
             mercury.stubs, norm.stubs, outrigger.stubs, phoenix.stubs,
-            reggie.stubs, sdm.stubs, start.stubs, hello.stubs">
+            reggie.stubs, sdm.stubs, start.stubs">
     </target>
 
     <target name="clean" depends="clean-dist, clean-jars"
@@ -2133,124 +2164,6 @@
         </preferredlistgen>
     </target>
 
-    <target name="client.jar" depends="stubs">
-        <property name="example-client.deps" location="${build.deps.dir}/example-client.deps"/>
-        <java classname="com.sun.jini.tool.ClassDep"
-		      failonerror="true"
-		      output="${example-client.deps}">
-            <classpath refid="classdep.classpath"/>
-            <arg value="-cp"/>
-            <arg path="${build.classes.dir}"/>
-            <arg value="-files"/>
-            <arg line="${jskplatform.exclude}"/>
-            <arg line="-in net.jini"/>
-            <arg line="-in com.sun.jini"/>
-            <arg value="com.sun.jini.example.hello.Client"/>
-        </java>
-        <delete file="${lib.dir}/client.jar" quiet="true"/>
-        <jar destfile="${lib.dir}/client.jar"
-		     index="false"
-		     manifest="${src.dir}/com/sun/jini/example/hello/client.mf">
-            <fileset dir="${build.classes.dir}" includesfile="${example-client.deps}"/>
-        </jar>
-    </target>
-
-    <target name="mdprefld.jar"	depends="compile">
-        <delete file="${lib.dir}/mdprefld.jar" quiet="true"/>
-        <jar destfile="${lib.dir}/mdprefld.jar"
-		     index="false">
-            <fileset dir="${build.classes.dir}"
-				 includes="com/sun/jini/example/hello/MdClassAnnotationProvider.class"/>
-        </jar>
-    </target>
-
-    <target name="server.jar" depends="stubs">
-        <property name="example-server.deps" location="${build.deps.dir}/example-server.deps"/>
-        <java classname="com.sun.jini.tool.ClassDep"
-		      failonerror="true"
-		      output="${example-server.deps}">
-            <classpath refid="classdep.classpath"/>
-            <arg value="-cp"/>
-            <arg path="${build.classes.dir}"/>
-            <arg value="-files"/>
-            <arg line="${jskplatform.exclude}"/>
-            <arg line="-in net.jini"/>
-            <arg line="-in com.sun.jini"/>
-            <arg value="com.sun.jini.example.hello.Server"/>
-            <arg value="com.sun.jini.example.hello.Server_Stub"/>
-            <arg value="com.sun.jini.example.hello.ConfirmingILFactory"/>
-            <arg value="com.sun.jini.example.hello.ConfirmingInvocationHandler"/>
-            <arg value="com.sun.jini.example.hello.ServerPermission"/>
-        </java>
-        <delete file="${lib.dir}/server.jar" quiet="true"/>
-        <jar destfile="${lib.dir}/server.jar"
-		     index="false"
-		     manifest="${src.dir}/com/sun/jini/example/hello/server.mf">
-            <fileset dir="${build.classes.dir}"  includesfile="${example-server.deps}"/>
-        </jar>
-    </target>
-
-    <target name="server-act.jar" depends="stubs">
-        <property name="example-server-act.deps" location="${build.deps.dir}/example-server-act.deps"/>
-        <java classname="com.sun.jini.tool.ClassDep"
-		      failonerror="true"
-		      output="${example-server-act.deps}">	      
-            <classpath refid="classdep.classpath"/>
-            <arg value="-cp"/>
-            <arg path="${build.classes.dir}"/>
-            <arg value="-files"/>
-            <arg line="${jskplatform.exclude}"/>
-            <arg line="-in net.jini"/>
-            <arg line="-in com.sun.jini"/>
-            <arg value="com.sun.jini.example.hello.ActivatableServer"/>
-            <arg value="com.sun.jini.example.hello.ConfirmingILFactory"/>
-            <arg value="com.sun.jini.example.hello.ConfirmingInvocationHandler"/>
-            <arg value="com.sun.jini.example.hello.Server"/>
-            <arg value="com.sun.jini.example.hello.Server_Stub"/>
-            <arg value="com.sun.jini.example.hello.ServerPermission"/>
-        </java>
-        <delete file="${lib.dir}/server-act.jar" quiet="true"/>
-        <jar destfile="${lib.dir}/server-act.jar"
-		     index="false"
-		     manifest="${src.dir}/com/sun/jini/example/hello/server-act.mf">
-            <fileset dir="${build.classes.dir}" includesfile="${example-server-act.deps}"/>
-        </jar>
-    </target>
-
-    <target name="server-dl.jar" depends="stubs">
-        <property name="example-server-dl.deps" location="${build.deps.dir}/example-server-dl.deps"/>
-        <java classname="com.sun.jini.tool.ClassDep"
-		      failonerror="true"
-		      output="${example-server-dl.deps}">
-            <classpath refid="classdep.classpath"/>
-            <arg value="-cp"/>
-            <arg path="${build.classes.dir}"/>
-            <arg value="-files"/>
-            <arg line="${jskplatform.exclude}"/>
-            <arg line="-in net.jini"/>
-            <arg line="-in com.sun.jini"/>
-            <arg value="com.sun.jini.example.hello.ConfirmingInvocationHandler"/>
-            <arg value="com.sun.jini.example.hello.Hello"/>
-            <arg value="com.sun.jini.example.hello.Proxy"/>
-            <arg value="com.sun.jini.example.hello.Server_Stub"/>
-            <arg value="com.sun.jini.example.hello.ServerPermission"/>
-	    
-        </java>
-        <delete file="${lib.dir}/server-dl.jar" quiet="true"/>
-        <jar destfile="${lib.dir}/server-dl.jar"
-		     index="false">
-            <fileset dir="${build.classes.dir}"  includesfile="${example-server-dl.deps}"/>
-            <metainf dir="${src.dir}/com/sun/jini/example/hello/config/META-INF"/>
-        </jar>
-    </target>
-    
-    <target name="hello.stubs">
-        <rmic base="${build.classes.dir}" stubversion="1.2">
-            <classpath refid="river.classpath"/>
-            <include name="com/sun/jini/example/hello/Server.class"/>
-        </rmic>
-    </target>
-
     <!-- You can specify the following properties (see qa/build.xml):
         run.categories
         harness.configs
@@ -2271,12 +2184,16 @@
             description="Clean all, including subcomponents">
         <!-- Call qa subcomponent build -->
         <ant dir="qa" target="clean" inheritall="false" />
+        <!-- Call examples subcomponent build -->
+        <ant dir="examples/hello" target="clean" inheritall="false" />
     </target>
 
     <target name="all.compile" depends="jars"
             description="Compile all, including subcomponents">
         <!-- Call qa subcomponent build -->
         <ant dir="qa" target="compile" inheritall="false" />
+        <!-- Call examples subcomponent build -->
+        <ant dir="examples/hello" target="compile" inheritall="false" />
     </target>
 
     <target name="all.doc" depends="doc,spec-doc,jars"
@@ -2289,6 +2206,8 @@
             description="Generate JAR files for all, including subcomponents">
         <!-- Call qa subcomponent build -->
         <ant dir="qa" target="jars" inheritall="false" />
+        <!-- Call examples subcomponent build -->
+        <ant dir="examples/hello" target="jars" inheritall="false" />
     </target>
 
 </project>

Modified: incubator/river/jtsk/trunk/common.xml
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/common.xml?rev=819236&r1=819235&r2=819236&view=diff
==============================================================================
--- incubator/river/jtsk/trunk/common.xml (original)
+++ incubator/river/jtsk/trunk/common.xml Sun Sep 27 00:15:03 2009
@@ -107,7 +107,7 @@
         <element name="plg-elements" implicit="true"/>
         <sequential>
             <java classname="com.sun.jini.tool.PreferredListGen"
-			      failonerror="true" fork="true" >
+			      failonerror="true" >
                 <plg-elements/>
             </java>
         </sequential>

Propchange: incubator/river/jtsk/trunk/examples/hello/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Sep 27 00:15:03 2009
@@ -0,0 +1,2 @@
+lib
+build

Added: incubator/river/jtsk/trunk/examples/hello/build.xml
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/build.xml?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/build.xml (added)
+++ incubator/river/jtsk/trunk/examples/hello/build.xml Sun Sep 27 00:15:03 2009
@@ -0,0 +1,220 @@
+<!--
+ ! Licensed to the Apache Software Foundation (ASF) under one
+ ! or more contributor license agreements.  See the NOTICE file
+ ! distributed with this work for additional information
+ ! regarding copyright ownership. The ASF licenses this file
+ ! to you under the Apache License, Version 2.0 (the
+ ! "License"); you may not use this file except in compliance
+ ! with the License. You may obtain a copy of the License at
+ ! 
+ !      http://www.apache.org/licenses/LICENSE-2.0
+ ! 
+ ! Unless required by applicable law or agreed to in writing, software
+ ! distributed under the License is distributed on an "AS IS" BASIS,
+ ! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ! See the License for the specific language governing permissions and
+ ! limitations under the License.
+ !-->
+
+<project name="hello" basedir="." default="jars">
+
+    <description>This Ant scripts provides numerous tasks to build the
+        the Hello Example</description>
+
+    <!-- Root of the River source distribution -->
+    <property name="root" location="../.." />
+
+    <!-- Import common settings and macros -->
+    <import file="${root}/common.xml"/>
+
+    <!-- Override this to run QA tests against an external River installation -->
+    <property name="river.home" location="${root}"/>
+
+    <property name="river.lib.dir" location="${river.home}/lib"/>
+    <property name="river.lib-ext.dir" location="${river.home}/lib-ext"/>
+    <property name="river.classes.dir" location="${river.home}/build/classes"/>
+    <property name="river.src.dir" location="${river.home}/src"/>
+
+    <!-- directory settings -->
+    <property name="trust.dir" location="harness/trust"/>
+
+    <!-- javadoc setings -->
+    <property name="javadoc.doc-title" value="Apache River v${version} Hello Example API Documentation"/>
+    <property name="javadoc.win-title" value="${javadoc.doc-title}"/>
+
+    <!-- classpath containing River distribution -->
+    <!-- TODO: investigate exact classpath requirements for this build -->
+    <path id="river.classpath">
+        <fileset dir="${river.lib.dir}" includes="**/*.jar" />
+    </path>
+
+    <!-- classpath for use by ClassDep in this build -->
+    <path id="classdep.classpath">
+        <pathelement path="${river.lib.dir}/classdep.jar"/>
+        <pathelement location="${river.home}/tools/asm-3.1.jar"/>
+        <pathelement location="${river.home}/tools/asm-commons-3.1.jar"/>
+    </path>
+
+    <!-- classpath for use by ClassDep in this build -->
+    <path id="classdep.cp">
+        <path refid="river.classpath"/>
+        <path location="${build.classes.dir}"/>
+    </path>
+
+    <path id="javadoc.classpath">
+        <path refid="river.classpath"/>
+        <path location="${build.classes.dir}"/>
+    </path>
+    
+	<property name="config.dir" location="config"/>
+      
+	<target name="clean" depends=""
+		description="Removes all files and dirs created by the build">
+        <delete dir="${build.dir}" quiet="true"/>
+        <delete dir="${lib.dir}"	quiet="true"/>
+    </target>
+
+    <target name="compile" depends="prep" description="Build classes">
+        <javac-cmd source.dir="${src.dir}" dest.dir="${build.classes.dir}">
+            <classpath refid="river.classpath"/>
+        </javac-cmd>
+    </target>
+      
+      
+	<target name="prep" description="Prepare the build">
+        <mkdir dir="${build.dir}" />
+        <mkdir dir="${build.classes.dir}" />
+        <mkdir dir="${build.deps.dir}" />
+        <mkdir dir="${lib.dir}" />
+    </target>
+      
+	<target name="jars"
+		depends="client.jar,
+			 mdprefld.jar,
+			 server.jar,
+			 server-act.jar,
+			 server-dl.jar">
+      
+	</target>
+      
+      
+	<target name="client.jar" depends="stubs">
+        <property name="example-client.deps" location="${build.deps.dir}/example-client.deps"/>
+        <java classname="com.sun.jini.tool.ClassDep"
+		      failonerror="true" logError="true"
+		      output="${example-client.deps}">
+            <classpath refid="classdep.classpath"/>
+            <arg value="-cp"/>
+            <arg pathref="classdep.cp"/>
+            <arg value="-files"/>
+            <arg line="${jskplatform.exclude}"/>
+            <arg line="-in net.jini"/>
+            <arg line="-in com.sun.jini"/>
+            <arg value="com.sun.jini.example.hello.Client"/>
+        </java>
+        <delete file="${lib.dir}/client.jar" quiet="true"/>
+        <jar destfile="${lib.dir}/client.jar"
+		     index="false"
+		     manifest="client.mf">
+            <fileset dir="${build.classes.dir}" includesfile="${example-client.deps}"/>
+        </jar>
+    </target>
+
+    <target name="mdprefld.jar"	depends="compile">
+        <delete file="${lib.dir}/mdprefld.jar" quiet="true"/>
+        <jar destfile="${lib.dir}/mdprefld.jar"
+		     index="false">
+            <fileset dir="${build.classes.dir}"
+				 includes="com/sun/jini/example/hello/MdClassAnnotationProvider.class"/>
+        </jar>
+    </target>
+
+    <target name="server.jar" depends="stubs">
+        <property name="example-server.deps" location="${build.deps.dir}/example-server.deps"/>
+        <java classname="com.sun.jini.tool.ClassDep"
+		      failonerror="true" logError="true"
+		      output="${example-server.deps}">
+            <classpath refid="classdep.classpath"/>
+            <arg value="-cp"/>
+            <arg pathref="classdep.cp"/>
+            <arg value="-files"/>
+            <arg line="${jskplatform.exclude}"/>
+            <arg line="-in net.jini"/>
+            <arg line="-in com.sun.jini"/>
+            <arg value="com.sun.jini.example.hello.Server"/>
+            <arg value="com.sun.jini.example.hello.Server_Stub"/>
+            <arg value="com.sun.jini.example.hello.ConfirmingILFactory"/>
+            <arg value="com.sun.jini.example.hello.ConfirmingInvocationHandler"/>
+            <arg value="com.sun.jini.example.hello.ServerPermission"/>
+        </java>
+        <delete file="${lib.dir}/server.jar" quiet="true"/>
+        <jar destfile="${lib.dir}/server.jar"
+		     index="false"
+		     manifest="server.mf">
+            <fileset dir="${build.classes.dir}"  includesfile="${example-server.deps}"/>
+        </jar>
+    </target>
+
+    <target name="server-act.jar" depends="stubs">
+        <property name="example-server-act.deps" location="${build.deps.dir}/example-server-act.deps"/>
+        <java classname="com.sun.jini.tool.ClassDep"
+		      failonerror="true" logError="true"
+		      output="${example-server-act.deps}">
+            <classpath refid="classdep.classpath"/>
+            <arg value="-cp"/>
+            <arg pathref="classdep.cp"/>
+            <arg value="-files"/>
+            <arg line="${jskplatform.exclude}"/>
+            <arg line="-in net.jini"/>
+            <arg line="-in com.sun.jini"/>
+            <arg value="com.sun.jini.example.hello.ActivatableServer"/>
+            <arg value="com.sun.jini.example.hello.ConfirmingILFactory"/>
+            <arg value="com.sun.jini.example.hello.ConfirmingInvocationHandler"/>
+            <arg value="com.sun.jini.example.hello.Server"/>
+            <arg value="com.sun.jini.example.hello.Server_Stub"/>
+            <arg value="com.sun.jini.example.hello.ServerPermission"/>
+        </java>
+        <delete file="${lib.dir}/server-act.jar" quiet="true"/>
+        <jar destfile="${lib.dir}/server-act.jar"
+		     index="false"
+		     manifest="server-act.mf">
+            <fileset dir="${build.classes.dir}" includesfile="${example-server-act.deps}"/>
+        </jar>
+    </target>
+
+    <target name="server-dl.jar" depends="stubs">
+        <property name="example-server-dl.deps" location="${build.deps.dir}/example-server-dl.deps"/>
+        <java classname="com.sun.jini.tool.ClassDep"
+		      failonerror="true" logError="true"
+		      output="${example-server-dl.deps}">
+            <classpath refid="classdep.classpath"/>
+            <arg value="-cp"/>
+            <arg pathref="classdep.cp"/>
+            <arg value="-files"/>
+            <arg line="${jskplatform.exclude}"/>
+            <arg line="-in net.jini"/>
+            <arg line="-in com.sun.jini"/>
+            <arg value="com.sun.jini.example.hello.ConfirmingInvocationHandler"/>
+            <arg value="com.sun.jini.example.hello.Hello"/>
+            <arg value="com.sun.jini.example.hello.Proxy"/>
+            <arg value="com.sun.jini.example.hello.Server_Stub"/>
+            <arg value="com.sun.jini.example.hello.ServerPermission"/>
+
+        </java>
+        <delete file="${lib.dir}/server-dl.jar" quiet="true"/>
+        <jar destfile="${lib.dir}/server-dl.jar"
+		     index="false">
+            <fileset dir="${build.classes.dir}"  includesfile="${example-server-dl.deps}"/>
+            <metainf dir="${config.dir}/META-INF"/>
+        </jar>
+    </target>
+
+    <target name="stubs" depends="compile">
+        <rmic base="${build.classes.dir}" stubversion="1.2">
+            <classpath refid="river.classpath"/>
+            <include name="com/sun/jini/example/hello/Server.class"/>
+        </rmic>
+    </target>
+
+</project>
+

Propchange: incubator/river/jtsk/trunk/examples/hello/build.xml
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/client.mf
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/client.mf?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/client.mf (added)
+++ incubator/river/jtsk/trunk/examples/hello/client.mf Sun Sep 27 00:15:03 2009
@@ -0,0 +1,4 @@
+Manifest-Version: 1.0
+Main-Class: com.sun.jini.example.hello.Client
+Class-path: ../../../lib/jsk-platform.jar ../../../lib/jsk-lib.jar mdprefld.jar
+

Propchange: incubator/river/jtsk/trunk/examples/hello/client.mf
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/META-INF/PREFERRED.LIST
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/META-INF/PREFERRED.LIST?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/META-INF/PREFERRED.LIST (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/META-INF/PREFERRED.LIST Sun Sep 27 00:15:03 2009
@@ -0,0 +1,10 @@
+PreferredResources-Version: 1.0
+
+Name: com/sun/jini/example/hello/ConfirmingInvocationHandler.class
+Preferred: true
+
+Name: com/sun/jini/example/hello/Proxy.class
+Preferred: true
+
+Name: com/sun/jini/example/hello/Server_Stub.class
+Preferred: true

Propchange: incubator/river/jtsk/trunk/examples/hello/config/META-INF/PREFERRED.LIST
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/activatable-jeri-server.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/activatable-jeri-server.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/activatable-jeri-server.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/activatable-jeri-server.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for activatable Jini ERI server */
+
+import java.net.SocketPermission;
+import java.rmi.activation.ActivationID;
+import java.security.Permission;
+import net.jini.activation.ActivationExporter;
+import net.jini.discovery.LookupDiscovery;
+import net.jini.security.BasicProxyPreparer;
+import net.jini.jeri.BasicJeriExporter;
+import net.jini.jeri.BasicILFactory;
+import net.jini.jeri.tcp.TcpServerEndpoint;
+
+com.sun.jini.example.hello.Server {
+
+    /* Exporter for the server proxy */
+    exporter =
+	/* Use activation exporter */
+	new ActivationExporter(
+	    (ActivationID) $data,
+	    new BasicJeriExporter(TcpServerEndpoint.getInstance(0),
+                                  new BasicILFactory()));
+
+    private groups = new String[] { "nonsecure.hello.example.jini.sun.com" };
+    discoveryManager = new LookupDiscovery(groups, this);
+
+}//end com.sun.jini.example.hello.Server
+
+/* Configuration block for the lookup discovery utility */
+net.jini.discovery.LookupDiscovery {
+
+    registrarPreparer = new BasicProxyPreparer(
+        false /* verify */,
+        new Permission[] {
+            new SocketPermission("*:1024-", "connect")
+        });
+
+}//end net.jini.discovery.LookupDiscovery 

Propchange: incubator/river/jtsk/trunk/examples/hello/config/activatable-jeri-server.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,131 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for activatable Kerberos server */
+
+import com.sun.jini.example.hello.ServerPermission;
+import java.rmi.activation.ActivationID;
+import java.security.Permission;
+import java.util.Collections;
+import javax.security.auth.kerberos.KerberosPrincipal;
+import javax.security.auth.login.LoginContext;
+import net.jini.activation.ActivationExporter;
+import net.jini.constraint.BasicMethodConstraints;
+import net.jini.core.constraint.Integrity;
+import net.jini.core.constraint.ClientAuthentication;
+import net.jini.core.constraint.InvocationConstraint;
+import net.jini.core.constraint.InvocationConstraints;
+import net.jini.core.constraint.ServerAuthentication;
+import net.jini.core.constraint.ServerMinPrincipal;
+import net.jini.jeri.kerberos.KerberosServerEndpoint;
+import net.jini.jeri.BasicJeriExporter;
+import net.jini.jeri.ProxyTrustILFactory;
+import net.jini.discovery.LookupDiscovery;
+import net.jini.security.AuthenticationPermission;
+import net.jini.security.BasicProxyPreparer;
+
+com.sun.jini.example.hello.Server {
+
+    /* JAAS login */
+    loginContext = new LoginContext("com.sun.jini.example.hello.Server");
+
+    /* Identify principals */
+    static serverUser = Collections.singleton(
+	new KerberosPrincipal("${serverPrincipal}"));
+    static reggieUser = Collections.singleton(
+	new KerberosPrincipal("${reggiePrincipal}"));
+    static phoenixUser = Collections.singleton(
+	new KerberosPrincipal("${phoenixPrincipal}"));
+
+    /* Exporter for the server proxy */
+    exporter =
+	/* Use activation exporter */
+	new ActivationExporter(
+	    (ActivationID) $data,
+	    /* Use secure exporter */
+	    new BasicJeriExporter(
+		/* Use Kerberos transport */
+		KerberosServerEndpoint.getInstance(0),
+		/* Support ProxyTrust */
+		new ProxyTrustILFactory(
+		    /* Require integrity for all methods */
+		    new BasicMethodConstraints(
+			new InvocationConstraints(Integrity.YES, null)),
+		    /* Require ServerPermission */
+		    ServerPermission.class)));
+
+    /* Constraints for talking to Phoenix */
+    private static activationSystemConstraints = 
+        new BasicMethodConstraints(
+	    new InvocationConstraints(
+	        new InvocationConstraint[] {
+		    Integrity.YES,
+                    ServerAuthentication.YES,
+                    new ServerMinPrincipal(phoenixUser) },
+                null));
+
+    /* Proxy preparer for the activation ID */
+    activationIdPreparer =
+        new BasicProxyPreparer(
+            false,    /* No need to verify the proxy */
+            activationSystemConstraints,
+            null);
+
+    private groups = new String[] { "krb.hello.example.jini.sun.com" };
+    discoveryManager = new LookupDiscovery(groups, this);
+
+}//end com.sun.jini.example.hello.Server
+
+/* Configuration block for the lookup discovery utility */
+net.jini.discovery.LookupDiscovery {
+
+    private serviceLookupConstraints =
+        new BasicMethodConstraints(
+            new InvocationConstraints(
+                new InvocationConstraint[]{
+                    Integrity.YES,
+                    ClientAuthentication.YES,
+                    ServerAuthentication.YES,
+                    new ServerMinPrincipal(
+                        com.sun.jini.example.hello.Server.reggieUser)
+                    },
+                null));
+
+    static registrarPreparer = new BasicProxyPreparer(
+        true,
+        serviceLookupConstraints,
+        new Permission[] {
+            new AuthenticationPermission(
+                com.sun.jini.example.hello.Server.serverUser,
+                com.sun.jini.example.hello.Server.reggieUser,
+                "connect")
+            });
+
+}//end net.jini.discovery.LookupDiscovery
+
+/* Configuration block for the join manager */
+net.jini.lookup.JoinManager {
+
+    static registrarPreparer    = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static registrationPreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static serviceLeasePreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+
+}//end net.jini.lookup.JoinManager

Propchange: incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.policy
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.policy?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.policy (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.policy Sun Sep 27 00:15:03 2009
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Security policy for activatable Kerberos server */
+
+/* Grant all permissions to local JAR files */
+grant codeBase "file:..${/}..${/}lib${/}*" {
+    permission java.security.AllPermission;
+};
+
+grant codeBase "file:lib${/}*" {
+    permission java.security.AllPermission;
+};
+
+/* Grant permissions to client principal */
+grant principal 
+    javax.security.auth.kerberos.KerberosPrincipal "${clientPrincipal}" 
+{
+    /* Call sayHello method */
+    permission com.sun.jini.example.hello.ServerPermission "sayHello";
+};
+
+/* Grant permissions to phoenix principal */
+grant principal 
+    javax.security.auth.kerberos.KerberosPrincipal "${phoenixPrincipal}" 
+{
+    /* Get proxy verifier */
+    permission com.sun.jini.phoenix.InstantiatorPermission "getProxyVerifier";
+
+    /* Instantiate activatable server */
+    permission com.sun.jini.phoenix.InstantiatorPermission "newInstance";
+};
+
+/* Grant permissions to reggie principal */
+grant principal 
+    javax.security.auth.kerberos.KerberosPrincipal "${reggiePrincipal}" 
+{
+    /* Allow reggie to call us back so join works */
+    permission net.jini.security.AccessPermission "notify";
+};
+
+/* Grant permissions to all principals */
+grant {
+    /* Call getProxyVerifier method */
+    permission com.sun.jini.example.hello.ServerPermission "getProxyVerifier";
+};

Propchange: incubator/river/jtsk/trunk/examples/hello/config/activatable-krb-server.policy
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/activatable-server.policy
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/activatable-server.policy?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/activatable-server.policy (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/activatable-server.policy Sun Sep 27 00:15:03 2009
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Security policy for non-secure, activatable server */
+
+/* Grant local JAR files all permissions */
+grant codeBase "file:..${/}..${/}lib${/}*" {
+    permission java.security.AllPermission;
+};
+
+grant codeBase "file:lib${/}*" {
+    permission java.security.AllPermission;
+};

Propchange: incubator/river/jtsk/trunk/examples/hello/config/activatable-server.policy
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,130 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for activatable SSL server */
+
+import com.sun.jini.config.KeyStores;
+import com.sun.jini.example.hello.ServerPermission;
+import java.rmi.activation.ActivationID;
+import java.security.Permission;
+import java.util.Collections;
+import javax.security.auth.login.LoginContext;
+import net.jini.activation.*;
+import net.jini.constraint.*;
+import net.jini.core.constraint.*;
+import net.jini.discovery.LookupDiscovery;
+import net.jini.jeri.*;
+import net.jini.jeri.ssl.*;
+import net.jini.security.*;
+
+com.sun.jini.example.hello.Server {
+
+    /* JAAS login */
+    loginContext = new LoginContext("com.sun.jini.example.hello.Server");
+
+    /* Public Key Certificates */
+    private static users =
+        KeyStores.getKeyStore("file:prebuiltkeys/truststore", null);
+
+    private static reggieUser  = Collections.singleton(
+        KeyStores.getX500Principal("reggie", users));
+
+    private static serverUser  = Collections.singleton(
+        KeyStores.getX500Principal("server", users));
+
+    private static phoenixUser = Collections.singleton(
+        KeyStores.getX500Principal("phoenix", users));
+
+    /* Exporter for the server proxy */
+    exporter =
+	/* Use activation exporter */
+	new ActivationExporter(
+	    (ActivationID) $data,
+	    /* Use secure exporter */
+	    new BasicJeriExporter(
+		/* Use SSL transport */
+		SslServerEndpoint.getInstance(0),
+		/* Support ProxyTrust */
+		new ProxyTrustILFactory(
+		    /* Require integrity for all methods */
+		    new BasicMethodConstraints(
+			new InvocationConstraints(Integrity.YES, null)),
+		    /* Require ServerPermission */
+		    ServerPermission.class)));
+
+    /* Constraints for talking to Phoenix */
+    private static activationSystemConstraints = 
+	new BasicMethodConstraints(
+	    new InvocationConstraints(
+		new InvocationConstraint[] {
+		    Integrity.YES,
+		    ClientAuthentication.NO,
+		    ServerAuthentication.YES,
+		    new ServerMinPrincipal(phoenixUser) },
+		null));
+
+    /* Proxy preparer for the activation ID */
+    activationIdPreparer =
+	new BasicProxyPreparer(
+            false,    /* No need to verify the proxy */
+            activationSystemConstraints, 
+            null);
+
+    private groups = new String[] { "ssl.hello.example.jini.sun.com" };
+    discoveryManager = new LookupDiscovery(groups, this);
+
+}// end com.sun.jini.example.hello.Server
+
+/* Configuration block for the lookup discovery utility */
+net.jini.discovery.LookupDiscovery {
+
+    private serviceLookupConstraints = 
+	new BasicMethodConstraints( 
+	    new InvocationConstraints( 
+		new InvocationConstraint[]{ 
+		    Integrity.YES,
+                    ClientAuthentication.YES,
+                    ServerAuthentication.YES,
+                    new ServerMinPrincipal(
+			com.sun.jini.example.hello.Server.reggieUser)
+                    },
+                null));
+
+    static registrarPreparer = new BasicProxyPreparer(
+	true,
+        serviceLookupConstraints,
+        new Permission[] { 
+	    new AuthenticationPermission(
+		com.sun.jini.example.hello.Server.serverUser,
+		com.sun.jini.example.hello.Server.reggieUser,
+		"connect") 
+	    });
+
+}//end net.jini.discovery.LookupDiscovery
+
+/* Configuration block for the join manager */
+net.jini.lookup.JoinManager {
+
+    static registrarPreparer    = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static registrationPreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static serviceLeasePreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+
+}//end net.jini.lookup.JoinManager

Propchange: incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.policy
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.policy?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.policy (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.policy Sun Sep 27 00:15:03 2009
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Security policy for activatable SSL server */
+
+/* Keystore containing trusted certificates to use for authentication */
+keystore "..${/}prebuiltkeys${/}truststore";
+
+/* Grant all permissions to local JAR files*/
+grant codeBase "file:..${/}..${/}lib${/}*" {
+    permission java.security.AllPermission;
+};
+
+grant codeBase "file:lib${/}*" {
+    permission java.security.AllPermission;
+};
+
+/* Grant permissions to phoenix principal */
+grant principal "phoenix" {
+    permission com.sun.jini.phoenix.InstantiatorPermission "getProxyVerifier";
+    permission com.sun.jini.phoenix.InstantiatorPermission "newInstance";
+};
+
+/* Grant permissions to client principal */
+grant principal "client" {
+    /* Call sayHello method */
+    permission com.sun.jini.example.hello.ServerPermission "sayHello";
+};
+
+/* Grant permissions to all principals */
+grant {
+    permission com.sun.jini.example.hello.ServerPermission "getProxyVerifier";
+};

Propchange: incubator/river/jtsk/trunk/examples/hello/config/activatable-ssl-server.policy
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/client.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/client.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/client.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/client.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for non-secure client */
+
+import java.net.SocketPermission;
+import java.security.Permission;
+import net.jini.discovery.LookupDiscovery;
+import net.jini.lookup.ServiceDiscoveryManager;
+import net.jini.security.BasicProxyPreparer;
+
+com.sun.jini.example.hello.Client {
+
+    private groups = new String[] { "nonsecure.hello.example.jini.sun.com" };
+    serviceDiscovery = new ServiceDiscoveryManager(
+	new LookupDiscovery(groups, this), null, this);
+
+}//end com.sun.jini.example.hello.Client
+
+/* Configuration block for the lookup discovery utility */
+net.jini.discovery.LookupDiscovery {
+
+    registrarPreparer = new BasicProxyPreparer(
+	false /* verify */,
+	new Permission[] {
+	    new SocketPermission("*:1024-", "connect")
+	});
+
+}//end net.jini.discovery.LookupDiscovery
+
+/* Configuration block for the SDM */
+net.jini.lookup.ServiceDiscoveryManager {
+
+    registrarPreparer = net.jini.discovery.LookupDiscovery.registrarPreparer;
+
+}//end net.jini.lookup.ServiceDiscoveryManager

Propchange: incubator/river/jtsk/trunk/examples/hello/config/client.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/client.policy
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/client.policy?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/client.policy (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/client.policy Sun Sep 27 00:15:03 2009
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Security policy for non-secure client */
+
+/* Grant all permissions to our classes */
+grant codeBase "file:..${/}..${/}lib${/}*" {
+    permission java.security.AllPermission;
+};
+
+grant codebase "file:lib${/}*" {
+    permission java.security.AllPermission;
+};

Propchange: incubator/river/jtsk/trunk/examples/hello/config/client.policy
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/confirming-jeri-server.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/confirming-jeri-server.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/confirming-jeri-server.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/confirming-jeri-server.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for confirming Jini ERI server */
+
+import com.sun.jini.example.hello.ConfirmingILFactory;
+import net.jini.discovery.LookupDiscovery;
+import net.jini.jeri.BasicJeriExporter;
+import net.jini.jeri.tcp.TcpServerEndpoint;
+
+com.sun.jini.example.hello.Server {
+
+    /* Exporter for the server proxy */
+    exporter = new BasicJeriExporter(
+	TcpServerEndpoint.getInstance(0),
+	new ConfirmingILFactory());
+
+    private groups = new String[] { "nonsecure.hello.example.jini.sun.com" };
+    discoveryManager = new LookupDiscovery(groups, this);
+
+}//end com.sun.jini.example.hello.Server

Propchange: incubator/river/jtsk/trunk/examples/hello/config/confirming-jeri-server.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/confirming-krb-server.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/confirming-krb-server.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/confirming-krb-server.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/confirming-krb-server.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,121 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for confirming Kerberos server */
+
+import com.sun.jini.example.hello.ConfirmingILFactory;
+import com.sun.jini.example.hello.ServerPermission;
+import java.security.Permission;
+import java.util.Collections;
+import javax.security.auth.kerberos.KerberosPrincipal;
+import javax.security.auth.login.LoginContext;
+import net.jini.constraint.BasicMethodConstraints;
+import net.jini.core.constraint.ClientAuthentication;
+import net.jini.core.constraint.Integrity;
+import net.jini.core.constraint.InvocationConstraint;
+import net.jini.core.constraint.InvocationConstraints;
+import net.jini.core.constraint.ServerAuthentication;
+import net.jini.core.constraint.ServerMinPrincipal;
+import net.jini.discovery.LookupDiscovery;
+import net.jini.jeri.BasicJeriExporter;
+import net.jini.jeri.BasicILFactory;
+import net.jini.jeri.kerberos.KerberosServerEndpoint;
+import net.jini.security.AuthenticationPermission;
+import net.jini.security.BasicProxyPreparer;
+import net.jini.security.proxytrust.ProxyTrustExporter;
+
+com.sun.jini.example.hello.Server {
+
+    /* JAAS login */
+    loginContext = new LoginContext("com.sun.jini.example.hello.Server");
+
+    /* Identify principals */
+    private static serverUser = Collections.singleton(
+	new KerberosPrincipal("${serverPrincipal}"));
+    private static reggieUser = Collections.singleton(
+	new KerberosPrincipal("${reggiePrincipal}"));
+
+    /* Exporter for the server proxy */
+    exporter =
+	/* Use proxy trust exporter */
+	new ProxyTrustExporter(
+	    /* main exporter */
+	    new BasicJeriExporter(
+		/* Use Kerberos transport */
+		KerberosServerEndpoint.getInstance(0),
+		/* Confirm calls */
+		new ConfirmingILFactory(
+		    /* Require integrity for all methods */
+		    new BasicMethodConstraints(
+			new InvocationConstraints(Integrity.YES, null)),
+		    /* Require ServerPermission */
+		    ServerPermission.class)),
+	    /* bootstrap exporter */
+	    new BasicJeriExporter(
+		/* Use Kerberos transport */
+		KerberosServerEndpoint.getInstance(0),
+		new BasicILFactory(
+		    /* Require integrity for all methods */
+		    new BasicMethodConstraints(
+			new InvocationConstraints(Integrity.YES, null)),
+		    /* Require ServerPermission */
+		    ServerPermission.class)));
+
+    private groups = new String[] { "krb.hello.example.jini.sun.com" };
+    discoveryManager = new LookupDiscovery(groups, this);
+
+}//end com.sun.jini.example.hello.Server
+
+/* Configuration block for the lookup discovery utility */
+net.jini.discovery.LookupDiscovery {
+
+    private serviceLookupConstraints = 
+	new BasicMethodConstraints( 
+	    new InvocationConstraints( 
+		new InvocationConstraint[]{ 
+		    Integrity.YES,
+                    ClientAuthentication.YES,
+                    ServerAuthentication.YES,
+                    new ServerMinPrincipal(
+			com.sun.jini.example.hello.Server.reggieUser)
+                    },
+                null));
+
+    static registrarPreparer = new BasicProxyPreparer(
+	true,
+        serviceLookupConstraints,
+        new Permission[] { 
+	    new AuthenticationPermission(
+		com.sun.jini.example.hello.Server.serverUser,
+		com.sun.jini.example.hello.Server.reggieUser,
+		"connect") 
+	    });
+
+}//end net.jini.discovery.LookupDiscovery
+
+/* Configuration block for the join manager */
+net.jini.lookup.JoinManager {
+
+    static registrarPreparer    = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static registrationPreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static serviceLeasePreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+
+}//end net.jini.lookup.JoinManager

Propchange: incubator/river/jtsk/trunk/examples/hello/config/confirming-krb-server.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/confirming-ssl-server.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/confirming-ssl-server.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/confirming-ssl-server.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/confirming-ssl-server.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,123 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for confirming SSL server */
+
+import com.sun.jini.example.hello.ConfirmingILFactory;
+import com.sun.jini.example.hello.ServerPermission;
+import com.sun.jini.config.KeyStores;
+import java.util.Collections;
+import java.security.Permission;
+import javax.security.auth.login.LoginContext;
+import net.jini.constraint.BasicMethodConstraints;
+import net.jini.core.constraint.ClientAuthentication;
+import net.jini.core.constraint.InvocationConstraint;
+import net.jini.core.constraint.InvocationConstraints;
+import net.jini.core.constraint.Integrity;
+import net.jini.core.constraint.ServerAuthentication;
+import net.jini.core.constraint.ServerMinPrincipal;
+import net.jini.discovery.LookupDiscovery;
+import net.jini.security.proxytrust.ProxyTrustExporter;
+import net.jini.security.*;
+import net.jini.jeri.*;
+import net.jini.jeri.ssl.*;
+
+com.sun.jini.example.hello.Server {
+
+    /* JAAS login */
+    loginContext = new LoginContext("com.sun.jini.example.hello.Server");
+
+    /* Public Key Certificates */
+    private static users = 
+        KeyStores.getKeyStore("file:prebuiltkeys/truststore", null);
+
+    private static reggieUser = Collections.singleton(
+	KeyStores.getX500Principal("reggie", users));
+
+    private static serverUser = Collections.singleton(
+	KeyStores.getX500Principal("server", users));
+
+    /* Exporter for the server proxy */
+    exporter =
+	/* Use proxy trust exporter */
+	new ProxyTrustExporter(
+	    /* main exporter */
+	    new BasicJeriExporter(
+		/* Use SSL transport */
+		SslServerEndpoint.getInstance(0),
+		/* Confirm calls */
+		new ConfirmingILFactory(
+		    /* Require integrity for all methods */
+		    new BasicMethodConstraints(
+			new InvocationConstraints(Integrity.YES, null)),
+		    /* Require ServerPermission */
+		    ServerPermission.class)),
+	    /* bootstrap exporter */
+	    new BasicJeriExporter(
+		/* Use SSL transport */
+		SslServerEndpoint.getInstance(0),
+		new BasicILFactory(
+		    /* Require integrity for all methods */
+		    new BasicMethodConstraints(
+			new InvocationConstraints(Integrity.YES, null)),
+		    /* Require ServerPermission */
+		    ServerPermission.class)));
+
+    private groups = new String[] { "ssl.hello.example.jini.sun.com" };
+    discoveryManager = new LookupDiscovery(groups, this);
+
+}//end com.sun.jini.example.hello.Server
+
+/* Configuration block for the lookup discovery utility */
+net.jini.discovery.LookupDiscovery {
+
+    private serviceLookupConstraints = 
+	new BasicMethodConstraints( 
+	    new InvocationConstraints( 
+		new InvocationConstraint[]{ 
+		    Integrity.YES,
+                    ClientAuthentication.YES,
+                    ServerAuthentication.YES,
+                    new ServerMinPrincipal(
+			com.sun.jini.example.hello.Server.reggieUser)
+                    },
+                null));
+
+    static registrarPreparer = new BasicProxyPreparer(
+	true,
+        serviceLookupConstraints,
+        new Permission[] { 
+	    new AuthenticationPermission(
+		com.sun.jini.example.hello.Server.serverUser,
+		com.sun.jini.example.hello.Server.reggieUser,
+		"connect") 
+	    });
+
+}//end net.jini.discovery.LookupDiscovery
+
+/* Configuration block for the join manager */
+net.jini.lookup.JoinManager {
+
+    static registrarPreparer    = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static registrationPreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+    static serviceLeasePreparer = 
+	net.jini.discovery.LookupDiscovery.registrarPreparer;
+
+}//end net.jini.lookup.JoinManager

Propchange: incubator/river/jtsk/trunk/examples/hello/config/confirming-ssl-server.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/dynamic-policy.security-properties
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/dynamic-policy.security-properties?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/dynamic-policy.security-properties (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/dynamic-policy.security-properties Sun Sep 27 00:15:03 2009
@@ -0,0 +1,22 @@
+#/*
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#*/
+
+# Java security properties file to install the dynamic security policy
+# provider
+
+policy.provider=net.jini.security.policy.DynamicPolicyProvider

Propchange: incubator/river/jtsk/trunk/examples/hello/config/dynamic-policy.security-properties
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix-group.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix-group.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix-group.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix-group.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+ /* Configuration source file for the non-secure phoenix group */
+
+import com.sun.jini.phoenix.AccessILFactory;
+import net.jini.jeri.BasicJeriExporter;
+import net.jini.jeri.tcp.TcpServerEndpoint;
+
+com.sun.jini.phoenix {
+
+    instantiatorExporter = 
+	new BasicJeriExporter(TcpServerEndpoint.getInstance(0),
+                              new AccessILFactory());
+
+}//end com.sun.jini.phoenix

Propchange: incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix-group.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for Jini ERI phoenix */
+
+com.sun.jini.phoenix {
+
+    persistenceDirectory = "lib${/}phoenix-log";
+    groupConfig = new String[] { "config${/}jeri-phoenix-group.config" };
+
+}//end com.sun.jini.phoenix 

Propchange: incubator/river/jtsk/trunk/examples/hello/config/jeri-phoenix.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/jeri-server.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/jeri-server.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/jeri-server.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/jeri-server.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for Jini ERI server */
+
+import net.jini.discovery.LookupDiscovery;
+import net.jini.jeri.BasicILFactory;
+import net.jini.jeri.BasicJeriExporter;
+import net.jini.jeri.tcp.TcpServerEndpoint;
+
+com.sun.jini.example.hello.Server {
+
+    /* Exporter for the server proxy */
+    exporter = new BasicJeriExporter(TcpServerEndpoint.getInstance(0),
+                                     new BasicILFactory());
+
+    private groups = new String[] { "nonsecure.hello.example.jini.sun.com" };
+    discoveryManager = new LookupDiscovery(groups, this);
+
+}//end com.sun.jini.example.hello.Server 

Propchange: incubator/river/jtsk/trunk/examples/hello/config/jeri-server.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix-group.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix-group.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix-group.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix-group.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for the non-secure phoenix group using JRMP */
+
+import com.sun.jini.phoenix.InstantiatorAccessExporter;
+
+com.sun.jini.phoenix {
+
+    instantiatorExporter = new InstantiatorAccessExporter();
+
+}//end com.sun.jini.phoenix

Propchange: incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix-group.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configuration source file for JRMP phoenix */
+
+import com.sun.jini.phoenix.*;
+import net.jini.jrmp.JrmpExporter;
+import java.rmi.activation.ActivationSystem;
+
+com.sun.jini.phoenix {
+
+    registryPort = ActivationSystem.SYSTEM_PORT;
+    registryExporter = new RegistrySunExporter(registryPort);
+    activatorExporter = new ActivatorSunJrmpExporter(registryPort);
+    systemExporter = new SunJrmpExporter(4, registryPort);
+    monitorExporter = new JrmpExporter(registryPort);
+    persistenceDirectory = "lib${/}phoenix-log";
+    groupConfig = new String[] { "config${/}jrmp-phoenix-group.config" };
+
+}//end com.sun.jini.phoenix 

Propchange: incubator/river/jtsk/trunk/examples/hello/config/jrmp-phoenix.config
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/river/jtsk/trunk/examples/hello/config/jrmp-reggie.config
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/examples/hello/config/jrmp-reggie.config?rev=819236&view=auto
==============================================================================
--- incubator/river/jtsk/trunk/examples/hello/config/jrmp-reggie.config (added)
+++ incubator/river/jtsk/trunk/examples/hello/config/jrmp-reggie.config Sun Sep 27 00:15:03 2009
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Configure source file for JRMP reggie */
+
+import net.jini.jrmp.JrmpExporter;
+
+com.sun.jini.reggie {
+
+    serverExporter = new JrmpExporter();
+    initialMemberGroups = new String[] { "nonsecure.hello.example.jini.sun.com" };
+
+}//end com.sun.jini.reggie

Propchange: incubator/river/jtsk/trunk/examples/hello/config/jrmp-reggie.config
------------------------------------------------------------------------------
    svn:executable = *