1. Changed jsharp files to java files
2. Added CommandLauncher to allow java classes to be invoked from msi install
This commit is contained in:
		| @@ -1,382 +1,342 @@ | |||||||
| <!-- Example Server Configuration File --> | <!-- Example Server Configuration File --> | ||||||
| <!-- Note that component elements are nested corresponding to their | <!-- Note that component elements are nested corresponding to their | ||||||
|      parent-child relationships with each other --> |      parent-child relationships with each other --> | ||||||
|  |  | ||||||
| <!-- A "Server" is a singleton element that represents the entire JVM, | <!-- A "Server" is a singleton element that represents the entire JVM, | ||||||
|      which may contain one or more "Service" instances.  The Server |      which may contain one or more "Service" instances.  The Server | ||||||
|      listens for a shutdown command on the indicated port. |      listens for a shutdown command on the indicated port. | ||||||
|  |  | ||||||
|      Note:  A "Server" is not itself a "Container", so you may not |      Note:  A "Server" is not itself a "Container", so you may not | ||||||
|      define subcomponents such as "Valves" or "Loggers" at this level. |      define subcomponents such as "Valves" or "Loggers" at this level. | ||||||
|  --> |  --> | ||||||
|  |  | ||||||
| <Server port="8005" shutdown="SHUTDOWN"> | <Server port="8585" shutdown="SHUTDOWN"> | ||||||
|  |  | ||||||
|   <!-- Comment these entries out to disable JMX MBeans support used for the  |   <!-- Comment these entries out to disable JMX MBeans support used for the  | ||||||
|        administration web application --> |        administration web application --> | ||||||
|   <Listener className="org.apache.catalina.core.AprLifecycleListener" /> |   <Listener className="org.apache.catalina.core.AprLifecycleListener" /> | ||||||
|   <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" /> |   <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" /> | ||||||
|   <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> |   <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> | ||||||
|   <Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/> |   <Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/> | ||||||
|  |  | ||||||
|   <!-- Global JNDI resources --> |   <!-- Global JNDI resources --> | ||||||
|   <GlobalNamingResources> |   <GlobalNamingResources> | ||||||
|  |  | ||||||
|     <!-- Test entry for demonstration purposes --> |     <!-- Test entry for demonstration purposes --> | ||||||
|     <Environment name="simpleValue" type="java.lang.Integer" value="30"/> |     <Environment name="simpleValue" type="java.lang.Integer" value="30"/> | ||||||
|  |  | ||||||
|     <!-- Editable user database that can also be used by |     <!-- Editable user database that can also be used by | ||||||
|          UserDatabaseRealm to authenticate users --> |          UserDatabaseRealm to authenticate users --> | ||||||
|     <Resource name="UserDatabase" auth="Container" |     <Resource name="UserDatabase" auth="Container" | ||||||
|               type="org.apache.catalina.UserDatabase" |               type="org.apache.catalina.UserDatabase" | ||||||
|        description="User database that can be updated and saved" |        description="User database that can be updated and saved" | ||||||
|            factory="org.apache.catalina.users.MemoryUserDatabaseFactory" |            factory="org.apache.catalina.users.MemoryUserDatabaseFactory" | ||||||
|           pathname="conf/tomcat-users.xml" /> |           pathname="conf/tomcat-users.xml" /> | ||||||
|  |  | ||||||
|   </GlobalNamingResources> |   </GlobalNamingResources> | ||||||
|  |  | ||||||
|   <!-- A "Service" is a collection of one or more "Connectors" that share |   <!-- A "Service" is a collection of one or more "Connectors" that share | ||||||
|        a single "Container" (and therefore the web applications visible |        a single "Container" (and therefore the web applications visible | ||||||
|        within that Container).  Normally, that Container is an "Engine", |        within that Container).  Normally, that Container is an "Engine", | ||||||
|        but this is not required. |        but this is not required. | ||||||
|  |  | ||||||
|        Note:  A "Service" is not itself a "Container", so you may not |        Note:  A "Service" is not itself a "Container", so you may not | ||||||
|        define subcomponents such as "Valves" or "Loggers" at this level. |        define subcomponents such as "Valves" or "Loggers" at this level. | ||||||
|    --> |    --> | ||||||
|  |  | ||||||
|   <!-- Define the Tomcat Stand-Alone Service --> |   <!-- Define the Tomcat Stand-Alone Service --> | ||||||
|   <Service name="Catalina"> |   <Service name="Catalina"> | ||||||
|  |  | ||||||
|     <!-- A "Connector" represents an endpoint by which requests are received |     <!-- A "Connector" represents an endpoint by which requests are received | ||||||
|          and responses are returned.  Each Connector passes requests on to the |          and responses are returned.  Each Connector passes requests on to the | ||||||
|          associated "Container" (normally an Engine) for processing. |          associated "Container" (normally an Engine) for processing. | ||||||
|  |  | ||||||
|          By default, a non-SSL HTTP/1.1 Connector is established on port 8080. |          By default, a non-SSL HTTP/1.1 Connector is established on port 8080. | ||||||
|          You can also enable an SSL HTTP/1.1 Connector on port 8443 by |          You can also enable an SSL HTTP/1.1 Connector on port 8443 by | ||||||
|          following the instructions below and uncommenting the second Connector |          following the instructions below and uncommenting the second Connector | ||||||
|          entry.  SSL support requires the following steps (see the SSL Config |          entry.  SSL support requires the following steps (see the SSL Config | ||||||
|          HOWTO in the Tomcat 5 documentation bundle for more detailed |          HOWTO in the Tomcat 5 documentation bundle for more detailed | ||||||
|          instructions): |          instructions): | ||||||
|          * If your JDK version 1.3 or prior, download and install JSSE 1.0.2 or |          * If your JDK version 1.3 or prior, download and install JSSE 1.0.2 or | ||||||
|            later, and put the JAR files into "$JAVA_HOME/jre/lib/ext". |            later, and put the JAR files into "$JAVA_HOME/jre/lib/ext". | ||||||
|          * Execute: |          * Execute: | ||||||
|              %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (Windows) |              %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (Windows) | ||||||
|              $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA  (Unix) |              $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA  (Unix) | ||||||
|            with a password value of "changeit" for both the certificate and |            with a password value of "changeit" for both the certificate and | ||||||
|            the keystore itself. |            the keystore itself. | ||||||
|  |  | ||||||
|          By default, DNS lookups are enabled when a web application calls |          By default, DNS lookups are enabled when a web application calls | ||||||
|          request.getRemoteHost().  This can have an adverse impact on |          request.getRemoteHost().  This can have an adverse impact on | ||||||
|          performance, so you can disable it by setting the |          performance, so you can disable it by setting the | ||||||
|          "enableLookups" attribute to "false".  When DNS lookups are disabled, |          "enableLookups" attribute to "false".  When DNS lookups are disabled, | ||||||
|          request.getRemoteHost() will return the String version of the |          request.getRemoteHost() will return the String version of the | ||||||
|          IP address of the remote client. |          IP address of the remote client. | ||||||
|     --> |     --> | ||||||
|  |  | ||||||
|     <!-- Define a non-SSL HTTP/1.1 Connector on port 8080 --> |     <!-- Note : To disable connection timeouts, set connectionTimeout value | ||||||
|     <Connector port="8080" maxHttpHeaderSize="8192" |      to 0 --> | ||||||
|                maxThreads="150" minSpareThreads="25" maxSpareThreads="75" | 	 | ||||||
|                enableLookups="false" redirectPort="8443" acceptCount="100" | 	<!-- Note : To use gzip compression you could set the following properties : | ||||||
|                connectionTimeout="20000" disableUploadTimeout="true" /> | 	 | ||||||
|     <!-- Note : To disable connection timeouts, set connectionTimeout value | 			   compression="on"  | ||||||
|      to 0 --> | 			   compressionMinSize="2048"  | ||||||
| 	 | 			   noCompressionUserAgents="gozilla, traviata"  | ||||||
| 	<!-- Note : To use gzip compression you could set the following properties : | 			   compressableMimeType="text/html,text/xml" | ||||||
| 	 | 	--> | ||||||
| 			   compression="on"  |  | ||||||
| 			   compressionMinSize="2048"  |  | ||||||
| 			   noCompressionUserAgents="gozilla, traviata"  |  | ||||||
| 			   compressableMimeType="text/html,text/xml" |     <!-- An Engine represents the entry point (within Catalina) that processes | ||||||
| 	--> |          every request.  The Engine implementation for Tomcat stand alone | ||||||
|  |          analyzes the HTTP headers included with the request, and passes them | ||||||
|     <!-- Define a SSL HTTP/1.1 Connector on port 8443 --> |          on to the appropriate Host (virtual host). --> | ||||||
|     <!-- |  | ||||||
|     <Connector port="8443" maxHttpHeaderSize="8192" |     <!-- You should set jvmRoute to support load-balancing via AJP ie : | ||||||
|                maxThreads="150" minSpareThreads="25" maxSpareThreads="75" |     <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">          | ||||||
|                enableLookups="false" disableUploadTimeout="true" |     -->  | ||||||
|                acceptCount="100" scheme="https" secure="true" |           | ||||||
|                clientAuth="false" sslProtocol="TLS" /> |     <!-- Define the top level container in our container hierarchy --> | ||||||
|     --> |     <Engine name="Catalina" defaultHost="localhost"> | ||||||
|  |  | ||||||
|     <!-- Define an AJP 1.3 Connector on port 8009 --> |       <!-- The request dumper valve dumps useful debugging information about | ||||||
|     <Connector port="8009"  |            the request headers and cookies that were received, and the response | ||||||
|                enableLookups="false" redirectPort="8443" protocol="AJP/1.3" /> |            headers and cookies that were sent, for all requests received by | ||||||
|  |            this instance of Tomcat.  If you care only about requests to a | ||||||
|     <!-- Define a Proxied HTTP/1.1 Connector on port 8082 --> |            particular virtual host, or a particular application, nest this | ||||||
|     <!-- See proxy documentation for more information about using this. --> |            element inside the corresponding <Host> or <Context> entry instead. | ||||||
|     <!-- |  | ||||||
|     <Connector port="8082"  |            For a similar mechanism that is portable to all Servlet 2.4 | ||||||
|                maxThreads="150" minSpareThreads="25" maxSpareThreads="75" |            containers, check out the "RequestDumperFilter" Filter in the | ||||||
|                enableLookups="false" acceptCount="100" connectionTimeout="20000" |            example application (the source for this filter may be found in | ||||||
|                proxyPort="80" disableUploadTimeout="true" /> |            "$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters"). | ||||||
|     --> |  | ||||||
|  |            Request dumping is disabled by default.  Uncomment the following | ||||||
|     <!-- Define a SSL Coyote HTTP/1.1 Connector on port 2645 --> |            element to enable it. --> | ||||||
|     <Connector port="2645"  |       <!-- | ||||||
|                maxThreads="150" minSpareThreads="25" maxSpareThreads="75" |       <Valve className="org.apache.catalina.valves.RequestDumperValve"/> | ||||||
|                enableLookups="false" disableUploadTimeout="true" |       --> | ||||||
|                acceptCount="100" debug="0" scheme="https" secure="true" |  | ||||||
|                clientAuth="false" sslProtocol="TLS" |       <!-- Because this Realm is here, an instance will be shared globally --> | ||||||
|                keystoreFile="ATS_INSTALL_DIRats\etc\keys\server\jks-store" |  | ||||||
|                keystorePass="secret" algorithm="SunX509" /> |       <!-- This Realm uses the UserDatabase configured in the global JNDI | ||||||
|  |            resources under the key "UserDatabase".  Any edits | ||||||
|     <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 |            that are performed against this UserDatabase are immediately | ||||||
|     <Connector port="8009"  |            available for use by the Realm.  --> | ||||||
|                enableLookups="false" redirectPort="8443" debug="0" |       <Realm className="org.apache.catalina.realm.UserDatabaseRealm" | ||||||
|                protocol="AJP/1.3" /> |              resourceName="UserDatabase"/> | ||||||
|     --> |  | ||||||
|  |       <!-- Comment out the old realm but leave here for now in case we | ||||||
|     <!-- An Engine represents the entry point (within Catalina) that processes |            need to go back quickly --> | ||||||
|          every request.  The Engine implementation for Tomcat stand alone |       <!-- | ||||||
|          analyzes the HTTP headers included with the request, and passes them |       <Realm className="org.apache.catalina.realm.MemoryRealm" /> | ||||||
|          on to the appropriate Host (virtual host). --> |       --> | ||||||
|  |  | ||||||
|     <!-- You should set jvmRoute to support load-balancing via AJP ie : |       <!-- Replace the above Realm with one of the following to get a Realm | ||||||
|     <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">          |            stored in a database and accessed via JDBC --> | ||||||
|     -->  |  | ||||||
|           |       <!-- | ||||||
|     <!-- Define the top level container in our container hierarchy --> |       <Realm  className="org.apache.catalina.realm.JDBCRealm" | ||||||
|     <Engine name="Catalina" defaultHost="localhost"> |              driverName="org.gjt.mm.mysql.Driver" | ||||||
|  |           connectionURL="jdbc:mysql://localhost/authority" | ||||||
|       <!-- The request dumper valve dumps useful debugging information about |          connectionName="test" connectionPassword="test" | ||||||
|            the request headers and cookies that were received, and the response |               userTable="users" userNameCol="user_name" userCredCol="user_pass" | ||||||
|            headers and cookies that were sent, for all requests received by |           userRoleTable="user_roles" roleNameCol="role_name" /> | ||||||
|            this instance of Tomcat.  If you care only about requests to a |       --> | ||||||
|            particular virtual host, or a particular application, nest this |  | ||||||
|            element inside the corresponding <Host> or <Context> entry instead. |       <!-- | ||||||
|  |       <Realm  className="org.apache.catalina.realm.JDBCRealm" | ||||||
|            For a similar mechanism that is portable to all Servlet 2.4 |              driverName="oracle.jdbc.driver.OracleDriver" | ||||||
|            containers, check out the "RequestDumperFilter" Filter in the |           connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL" | ||||||
|            example application (the source for this filter may be found in |          connectionName="scott" connectionPassword="tiger" | ||||||
|            "$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters"). |               userTable="users" userNameCol="user_name" userCredCol="user_pass" | ||||||
|  |           userRoleTable="user_roles" roleNameCol="role_name" /> | ||||||
|            Request dumping is disabled by default.  Uncomment the following |       --> | ||||||
|            element to enable it. --> |  | ||||||
|       <!-- |       <!-- | ||||||
|       <Valve className="org.apache.catalina.valves.RequestDumperValve"/> |       <Realm  className="org.apache.catalina.realm.JDBCRealm" | ||||||
|       --> |              driverName="sun.jdbc.odbc.JdbcOdbcDriver" | ||||||
|  |           connectionURL="jdbc:odbc:CATALINA" | ||||||
|       <!-- Because this Realm is here, an instance will be shared globally --> |               userTable="users" userNameCol="user_name" userCredCol="user_pass" | ||||||
|  |           userRoleTable="user_roles" roleNameCol="role_name" /> | ||||||
|       <!-- This Realm uses the UserDatabase configured in the global JNDI |       --> | ||||||
|            resources under the key "UserDatabase".  Any edits |  | ||||||
|            that are performed against this UserDatabase are immediately |       <!-- Define the default virtual host | ||||||
|            available for use by the Realm.  --> |            Note: XML Schema validation will not work with Xerces 2.2. | ||||||
|       <Realm className="org.apache.catalina.realm.UserDatabaseRealm" |        --> | ||||||
|              resourceName="UserDatabase"/> |       <Host name="localhost" appBase="webapps" | ||||||
|  |        unpackWARs="true" autoDeploy="true" | ||||||
|       <!-- Comment out the old realm but leave here for now in case we |        xmlValidation="false" xmlNamespaceAware="false"> | ||||||
|            need to go back quickly --> |  | ||||||
|       <!-- |         <!-- Defines a cluster for this node, | ||||||
|       <Realm className="org.apache.catalina.realm.MemoryRealm" /> |              By defining this element, means that every manager will be changed. | ||||||
|       --> |              So when running a cluster, only make sure that you have webapps in there | ||||||
|  |              that need to be clustered and remove the other ones. | ||||||
|       <!-- Replace the above Realm with one of the following to get a Realm |              A cluster has the following parameters: | ||||||
|            stored in a database and accessed via JDBC --> |  | ||||||
|  |              className = the fully qualified name of the cluster class | ||||||
|       <!-- |  | ||||||
|       <Realm  className="org.apache.catalina.realm.JDBCRealm" |              clusterName = a descriptive name for your cluster, can be anything | ||||||
|              driverName="org.gjt.mm.mysql.Driver" |  | ||||||
|           connectionURL="jdbc:mysql://localhost/authority" |              mcastAddr = the multicast address, has to be the same for all the nodes | ||||||
|          connectionName="test" connectionPassword="test" |  | ||||||
|               userTable="users" userNameCol="user_name" userCredCol="user_pass" |              mcastPort = the multicast port, has to be the same for all the nodes | ||||||
|           userRoleTable="user_roles" roleNameCol="role_name" /> |               | ||||||
|       --> |              mcastBindAddress = bind the multicast socket to a specific address | ||||||
|  |               | ||||||
|       <!-- |              mcastTTL = the multicast TTL if you want to limit your broadcast | ||||||
|       <Realm  className="org.apache.catalina.realm.JDBCRealm" |               | ||||||
|              driverName="oracle.jdbc.driver.OracleDriver" |              mcastSoTimeout = the multicast readtimeout  | ||||||
|           connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL" |  | ||||||
|          connectionName="scott" connectionPassword="tiger" |              mcastFrequency = the number of milliseconds in between sending a "I'm alive" heartbeat | ||||||
|               userTable="users" userNameCol="user_name" userCredCol="user_pass" |  | ||||||
|           userRoleTable="user_roles" roleNameCol="role_name" /> |              mcastDropTime = the number a milliseconds before a node is considered "dead" if no heartbeat is received | ||||||
|       --> |  | ||||||
|  |              tcpThreadCount = the number of threads to handle incoming replication requests, optimal would be the same amount of threads as nodes  | ||||||
|       <!-- |  | ||||||
|       <Realm  className="org.apache.catalina.realm.JDBCRealm" |              tcpListenAddress = the listen address (bind address) for TCP cluster request on this host,  | ||||||
|              driverName="sun.jdbc.odbc.JdbcOdbcDriver" |                                 in case of multiple ethernet cards. | ||||||
|           connectionURL="jdbc:odbc:CATALINA" |                                 auto means that address becomes | ||||||
|               userTable="users" userNameCol="user_name" userCredCol="user_pass" |                                 InetAddress.getLocalHost().getHostAddress() | ||||||
|           userRoleTable="user_roles" roleNameCol="role_name" /> |  | ||||||
|       --> |              tcpListenPort = the tcp listen port | ||||||
|  |  | ||||||
|       <!-- Define the default virtual host |              tcpSelectorTimeout = the timeout (ms) for the Selector.select() method in case the OS | ||||||
|            Note: XML Schema validation will not work with Xerces 2.2. |                                   has a wakup bug in java.nio. Set to 0 for no timeout | ||||||
|        --> |  | ||||||
|       <Host name="localhost" appBase="webapps" |              printToScreen = true means that managers will also print to std.out | ||||||
|        unpackWARs="true" autoDeploy="true" |  | ||||||
|        xmlValidation="false" xmlNamespaceAware="false"> |              expireSessionsOnShutdown = true means that  | ||||||
|  |  | ||||||
|         <!-- Defines a cluster for this node, |              useDirtyFlag = true means that we only replicate a session after setAttribute,removeAttribute has been called. | ||||||
|              By defining this element, means that every manager will be changed. |                             false means to replicate the session after each request. | ||||||
|              So when running a cluster, only make sure that you have webapps in there |                             false means that replication would work for the following piece of code: (only for SimpleTcpReplicationManager) | ||||||
|              that need to be clustered and remove the other ones. |                             <% | ||||||
|              A cluster has the following parameters: |                             HashMap map = (HashMap)session.getAttribute("map"); | ||||||
|  |                             map.put("key","value"); | ||||||
|              className = the fully qualified name of the cluster class |                             %> | ||||||
|  |              replicationMode = can be either 'pooled', 'synchronous' or 'asynchronous'. | ||||||
|              clusterName = a descriptive name for your cluster, can be anything |                                * Pooled means that the replication happens using several sockets in a synchronous way. Ie, the data gets replicated, then the request return. This is the same as the 'synchronous' setting except it uses a pool of sockets, hence it is multithreaded. This is the fastest and safest configuration. To use this, also increase the nr of tcp threads that you have dealing with replication. | ||||||
|  |                                * Synchronous means that the thread that executes the request, is also the | ||||||
|              mcastAddr = the multicast address, has to be the same for all the nodes |                                thread the replicates the data to the other nodes, and will not return until all | ||||||
|  |                                nodes have received the information. | ||||||
|              mcastPort = the multicast port, has to be the same for all the nodes |                                * Asynchronous means that there is a specific 'sender' thread for each cluster node, | ||||||
|               |                                so the request thread will queue the replication request into a "smart" queue, | ||||||
|              mcastBindAddress = bind the multicast socket to a specific address |                                and then return to the client. | ||||||
|               |                                The "smart" queue is a queue where when a session is added to the queue, and the same session | ||||||
|              mcastTTL = the multicast TTL if you want to limit your broadcast |                                already exists in the queue from a previous request, that session will be replaced | ||||||
|               |                                in the queue instead of replicating two requests. This almost never happens, unless there is a  | ||||||
|              mcastSoTimeout = the multicast readtimeout  |                                large network delay. | ||||||
|  |         -->              | ||||||
|              mcastFrequency = the number of milliseconds in between sending a "I'm alive" heartbeat |         <!-- | ||||||
|  |             When configuring for clustering, you also add in a valve to catch all the requests | ||||||
|              mcastDropTime = the number a milliseconds before a node is considered "dead" if no heartbeat is received |             coming in, at the end of the request, the session may or may not be replicated. | ||||||
|  |             A session is replicated if and only if all the conditions are met: | ||||||
|              tcpThreadCount = the number of threads to handle incoming replication requests, optimal would be the same amount of threads as nodes  |             1. useDirtyFlag is true or setAttribute or removeAttribute has been called AND | ||||||
|  |             2. a session exists (has been created) | ||||||
|              tcpListenAddress = the listen address (bind address) for TCP cluster request on this host,  |             3. the request is not trapped by the "filter" attribute | ||||||
|                                 in case of multiple ethernet cards. |  | ||||||
|                                 auto means that address becomes |             The filter attribute is to filter out requests that could not modify the session, | ||||||
|                                 InetAddress.getLocalHost().getHostAddress() |             hence we don't replicate the session after the end of this request. | ||||||
|  |             The filter is negative, ie, anything you put in the filter, you mean to filter out, | ||||||
|              tcpListenPort = the tcp listen port |             ie, no replication will be done on requests that match one of the filters. | ||||||
|  |             The filter attribute is delimited by ;, so you can't escape out ; even if you wanted to. | ||||||
|              tcpSelectorTimeout = the timeout (ms) for the Selector.select() method in case the OS |  | ||||||
|                                   has a wakup bug in java.nio. Set to 0 for no timeout |             filter=".*\.gif;.*\.js;" means that we will not replicate the session after requests with the URI | ||||||
|  |             ending with .gif and .js are intercepted. | ||||||
|              printToScreen = true means that managers will also print to std.out |              | ||||||
|  |             The deployer element can be used to deploy apps cluster wide. | ||||||
|              expireSessionsOnShutdown = true means that  |             Currently the deployment only deploys/undeploys to working members in the cluster | ||||||
|  |             so no WARs are copied upons startup of a broken node. | ||||||
|              useDirtyFlag = true means that we only replicate a session after setAttribute,removeAttribute has been called. |             The deployer watches a directory (watchDir) for WAR files when watchEnabled="true" | ||||||
|                             false means to replicate the session after each request. |             When a new war file is added the war gets deployed to the local instance, | ||||||
|                             false means that replication would work for the following piece of code: (only for SimpleTcpReplicationManager) |             and then deployed to the other instances in the cluster. | ||||||
|                             <% |             When a war file is deleted from the watchDir the war is undeployed locally  | ||||||
|                             HashMap map = (HashMap)session.getAttribute("map"); |             and cluster wide | ||||||
|                             map.put("key","value"); |         --> | ||||||
|                             %> |          | ||||||
|              replicationMode = can be either 'pooled', 'synchronous' or 'asynchronous'. |         <!-- | ||||||
|                                * Pooled means that the replication happens using several sockets in a synchronous way. Ie, the data gets replicated, then the request return. This is the same as the 'synchronous' setting except it uses a pool of sockets, hence it is multithreaded. This is the fastest and safest configuration. To use this, also increase the nr of tcp threads that you have dealing with replication. |         <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster" | ||||||
|                                * Synchronous means that the thread that executes the request, is also the |                  managerClassName="org.apache.catalina.cluster.session.DeltaManager" | ||||||
|                                thread the replicates the data to the other nodes, and will not return until all |                  expireSessionsOnShutdown="false" | ||||||
|                                nodes have received the information. |                  useDirtyFlag="true" | ||||||
|                                * Asynchronous means that there is a specific 'sender' thread for each cluster node, |                  notifyListenersOnReplication="true"> | ||||||
|                                so the request thread will queue the replication request into a "smart" queue, |  | ||||||
|                                and then return to the client. |             <Membership  | ||||||
|                                The "smart" queue is a queue where when a session is added to the queue, and the same session |                 className="org.apache.catalina.cluster.mcast.McastService" | ||||||
|                                already exists in the queue from a previous request, that session will be replaced |                 mcastAddr="228.0.0.4" | ||||||
|                                in the queue instead of replicating two requests. This almost never happens, unless there is a  |                 mcastPort="45564" | ||||||
|                                large network delay. |                 mcastFrequency="500" | ||||||
|         -->              |                 mcastDropTime="3000"/> | ||||||
|         <!-- |  | ||||||
|             When configuring for clustering, you also add in a valve to catch all the requests |             <Receiver  | ||||||
|             coming in, at the end of the request, the session may or may not be replicated. |                 className="org.apache.catalina.cluster.tcp.ReplicationListener" | ||||||
|             A session is replicated if and only if all the conditions are met: |                 tcpListenAddress="auto" | ||||||
|             1. useDirtyFlag is true or setAttribute or removeAttribute has been called AND |                 tcpListenPort="4001" | ||||||
|             2. a session exists (has been created) |                 tcpSelectorTimeout="100" | ||||||
|             3. the request is not trapped by the "filter" attribute |                 tcpThreadCount="6"/> | ||||||
|  |  | ||||||
|             The filter attribute is to filter out requests that could not modify the session, |             <Sender | ||||||
|             hence we don't replicate the session after the end of this request. |                 className="org.apache.catalina.cluster.tcp.ReplicationTransmitter" | ||||||
|             The filter is negative, ie, anything you put in the filter, you mean to filter out, |                 replicationMode="pooled" | ||||||
|             ie, no replication will be done on requests that match one of the filters. |                 ackTimeout="15000" | ||||||
|             The filter attribute is delimited by ;, so you can't escape out ; even if you wanted to. |                 waitForAck="true"/> | ||||||
|  |  | ||||||
|             filter=".*\.gif;.*\.js;" means that we will not replicate the session after requests with the URI |             <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve" | ||||||
|             ending with .gif and .js are intercepted. |                    filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/> | ||||||
|              |                     | ||||||
|             The deployer element can be used to deploy apps cluster wide. |             <Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer" | ||||||
|             Currently the deployment only deploys/undeploys to working members in the cluster |                       tempDir="/tmp/war-temp/" | ||||||
|             so no WARs are copied upons startup of a broken node. |                       deployDir="/tmp/war-deploy/" | ||||||
|             The deployer watches a directory (watchDir) for WAR files when watchEnabled="true" |                       watchDir="/tmp/war-listen/" | ||||||
|             When a new war file is added the war gets deployed to the local instance, |                       watchEnabled="false"/> | ||||||
|             and then deployed to the other instances in the cluster. |                        | ||||||
|             When a war file is deleted from the watchDir the war is undeployed locally  |             <ClusterListener className="org.apache.catalina.cluster.session.ClusterSessionListener"/> | ||||||
|             and cluster wide |         </Cluster> | ||||||
|         --> |         -->         | ||||||
|          |  | ||||||
|         <!-- |  | ||||||
|         <Cluster className="org.apache.catalina.cluster.tcp.SimpleTcpCluster" |  | ||||||
|                  managerClassName="org.apache.catalina.cluster.session.DeltaManager" |         <!-- Normally, users must authenticate themselves to each web app | ||||||
|                  expireSessionsOnShutdown="false" |              individually.  Uncomment the following entry if you would like | ||||||
|                  useDirtyFlag="true" |              a user to be authenticated the first time they encounter a | ||||||
|                  notifyListenersOnReplication="true"> |              resource protected by a security constraint, and then have that | ||||||
|  |              user identity maintained across *all* web applications contained | ||||||
|             <Membership  |              in this virtual host. --> | ||||||
|                 className="org.apache.catalina.cluster.mcast.McastService" |         <!-- | ||||||
|                 mcastAddr="228.0.0.4" |         <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> | ||||||
|                 mcastPort="45564" |         --> | ||||||
|                 mcastFrequency="500" |  | ||||||
|                 mcastDropTime="3000"/> |         <!-- Access log processes all requests for this virtual host.  By | ||||||
|  |              default, log files are created in the "logs" directory relative to | ||||||
|             <Receiver  |              $CATALINA_HOME.  If you wish, you can specify a different | ||||||
|                 className="org.apache.catalina.cluster.tcp.ReplicationListener" |              directory with the "directory" attribute.  Specify either a relative | ||||||
|                 tcpListenAddress="auto" |              (to $CATALINA_HOME) or absolute path to the desired directory. | ||||||
|                 tcpListenPort="4001" |         --> | ||||||
|                 tcpSelectorTimeout="100" |         <!-- | ||||||
|                 tcpThreadCount="6"/> |         <Valve className="org.apache.catalina.valves.AccessLogValve" | ||||||
|  |                  directory="logs"  prefix="localhost_access_log." suffix=".txt" | ||||||
|             <Sender |                  pattern="common" resolveHosts="false"/> | ||||||
|                 className="org.apache.catalina.cluster.tcp.ReplicationTransmitter" |         --> | ||||||
|                 replicationMode="pooled" |  | ||||||
|                 ackTimeout="15000" |         <!-- Access log processes all requests for this virtual host.  By | ||||||
|                 waitForAck="true"/> |              default, log files are created in the "logs" directory relative to | ||||||
|  |              $CATALINA_HOME.  If you wish, you can specify a different | ||||||
|             <Valve className="org.apache.catalina.cluster.tcp.ReplicationValve" |              directory with the "directory" attribute.  Specify either a relative | ||||||
|                    filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/> |              (to $CATALINA_HOME) or absolute path to the desired directory. | ||||||
|                     |              This access log implementation is optimized for maximum performance, | ||||||
|             <Deployer className="org.apache.catalina.cluster.deploy.FarmWarDeployer" |              but is hardcoded to support only the "common" and "combined" patterns. | ||||||
|                       tempDir="/tmp/war-temp/" |         --> | ||||||
|                       deployDir="/tmp/war-deploy/" |         <!-- | ||||||
|                       watchDir="/tmp/war-listen/" |         <Valve className="org.apache.catalina.valves.FastCommonAccessLogValve" | ||||||
|                       watchEnabled="false"/> |                  directory="logs"  prefix="localhost_access_log." suffix=".txt" | ||||||
|                        |                  pattern="common" resolveHosts="false"/> | ||||||
|             <ClusterListener className="org.apache.catalina.cluster.session.ClusterSessionListener"/> |         --> | ||||||
|         </Cluster> |  | ||||||
|         -->         |       </Host> | ||||||
|  |  | ||||||
|  |     </Engine> | ||||||
|  |  | ||||||
|         <!-- Normally, users must authenticate themselves to each web app |   </Service> | ||||||
|              individually.  Uncomment the following entry if you would like |  | ||||||
|              a user to be authenticated the first time they encounter a | </Server> | ||||||
|              resource protected by a security constraint, and then have that |  | ||||||
|              user identity maintained across *all* web applications contained |  | ||||||
|              in this virtual host. --> |  | ||||||
|         <!-- |  | ||||||
|         <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> |  | ||||||
|         --> |  | ||||||
|  |  | ||||||
|         <!-- Access log processes all requests for this virtual host.  By |  | ||||||
|              default, log files are created in the "logs" directory relative to |  | ||||||
|              $CATALINA_HOME.  If you wish, you can specify a different |  | ||||||
|              directory with the "directory" attribute.  Specify either a relative |  | ||||||
|              (to $CATALINA_HOME) or absolute path to the desired directory. |  | ||||||
|         --> |  | ||||||
|         <!-- |  | ||||||
|         <Valve className="org.apache.catalina.valves.AccessLogValve" |  | ||||||
|                  directory="logs"  prefix="localhost_access_log." suffix=".txt" |  | ||||||
|                  pattern="common" resolveHosts="false"/> |  | ||||||
|         --> |  | ||||||
|  |  | ||||||
|         <!-- Access log processes all requests for this virtual host.  By |  | ||||||
|              default, log files are created in the "logs" directory relative to |  | ||||||
|              $CATALINA_HOME.  If you wish, you can specify a different |  | ||||||
|              directory with the "directory" attribute.  Specify either a relative |  | ||||||
|              (to $CATALINA_HOME) or absolute path to the desired directory. |  | ||||||
|              This access log implementation is optimized for maximum performance, |  | ||||||
|              but is hardcoded to support only the "common" and "combined" patterns. |  | ||||||
|         --> |  | ||||||
|         <!-- |  | ||||||
|         <Valve className="org.apache.catalina.valves.FastCommonAccessLogValve" |  | ||||||
|                  directory="logs"  prefix="localhost_access_log." suffix=".txt" |  | ||||||
|                  pattern="common" resolveHosts="false"/> |  | ||||||
|         --> |  | ||||||
|  |  | ||||||
|       </Host> |  | ||||||
|  |  | ||||||
|     </Engine> |  | ||||||
|  |  | ||||||
|   </Service> |  | ||||||
|  |  | ||||||
| </Server> |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,305 +1,306 @@ | |||||||
| ####################################################################### | ####################################################################### | ||||||
| # | # | ||||||
| #  Copyright (C) 2006 Novell, Inc. | #  Copyright (C) 2006 Novell, Inc. | ||||||
| # | # | ||||||
| #  This program is free software; you can redistribute it and/or | #  This program is free software; you can redistribute it and/or | ||||||
| #  modify it under the terms of the GNU General Public | #  modify it under the terms of the GNU General Public | ||||||
| #  License as published by the Free Software Foundation; either | #  License as published by the Free Software Foundation; either | ||||||
| #  version 2 of the License, or (at your option) any later version. | #  version 2 of the License, or (at your option) any later version. | ||||||
| # | # | ||||||
| #  This program is distributed in the hope that it will be useful, | #  This program is distributed in the hope that it will be useful, | ||||||
| #  but WITHOUT ANY WARRANTY; without even the implied warranty of | #  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
| #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
| #  General Public License for more details. | #  General Public License for more details. | ||||||
| # | # | ||||||
| #  You should have received a copy of the GNU General Public | #  You should have received a copy of the GNU General Public | ||||||
| #  License along with this program; if not, write to the Free | #  License along with this program; if not, write to the Free | ||||||
| #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||||
| # | # | ||||||
| # | # | ||||||
| ####################################################################### | ####################################################################### | ||||||
|  |  | ||||||
| AC_INIT(CASA_auth_token_svc, 1.7.1,,CASA_auth_token_svc) | AC_INIT(CASA_auth_token_svc, 1.7.1,,CASA_auth_token_svc) | ||||||
| AC_CONFIG_SRCDIR(autogen.sh) | AC_CONFIG_SRCDIR(autogen.sh) | ||||||
| AC_CANONICAL_SYSTEM | AC_CANONICAL_SYSTEM | ||||||
| AM_INIT_AUTOMAKE(tar-pax) | AM_INIT_AUTOMAKE(tar-pax) | ||||||
|  |  | ||||||
| RELEASE=`date +%Y%m%d_%H%M` | RELEASE=`date +%Y%m%d_%H%M` | ||||||
| AC_SUBST(RELEASE) | AC_SUBST(RELEASE) | ||||||
| AM_MAINTAINER_MODE | AM_MAINTAINER_MODE | ||||||
|  |  | ||||||
| # | # | ||||||
| # Check for a valid C# compiler | # Check for a valid C# compiler | ||||||
| # | # | ||||||
| #AC_CHECK_PROG(CSC, csc, csc) | #AC_CHECK_PROG(CSC, csc, csc) | ||||||
| #test -z "$CSC" && AC_CHECK_PROG(CSC, mcs, mcs) | #test -z "$CSC" && AC_CHECK_PROG(CSC, mcs, mcs) | ||||||
| #test -z "$CSC" && AC_MSG_ERROR([no acceptable C Sharp compiler found in \$PATH]) | #test -z "$CSC" && AC_MSG_ERROR([no acceptable C Sharp compiler found in \$PATH]) | ||||||
|  |  | ||||||
| # | # | ||||||
| # Check for valid C# compiler in linux | # Check for valid C# compiler in linux | ||||||
| # | # | ||||||
| case $host_os in | case $host_os in | ||||||
|     cygwin*) |     cygwin*) | ||||||
|     ;; |     ;; | ||||||
|     *) |     *) | ||||||
|         AC_CHECK_PROG(CSC, csc, csc) |         AC_CHECK_PROG(CSC, csc, csc) | ||||||
| 	test -z "$CSC" && AC_CHECK_PROG(CSC, mcs, mcs) | 	test -z "$CSC" && AC_CHECK_PROG(CSC, mcs, mcs) | ||||||
| 	test -z "$CSC" && AC_MSG_ERROR([no acceptable C Sharp compiler found in \$PATH]) | 	test -z "$CSC" && AC_MSG_ERROR([no acceptable C Sharp compiler found in \$PATH]) | ||||||
|  |  | ||||||
|     ;; |     ;; | ||||||
| esac | esac | ||||||
|  |  | ||||||
| case $CSC in | case $CSC in | ||||||
|     # |     # | ||||||
|     # Mono-specific configuration |     # Mono-specific configuration | ||||||
|     # |     # | ||||||
|     mcs) |     mcs) | ||||||
|         CSC_EXEFLAG=/target:exe |         CSC_EXEFLAG=/target:exe | ||||||
|         CSC_LIBFLAG=/target:library |         CSC_LIBFLAG=/target:library | ||||||
|         CSC_EXEFLAG=/target:exe |         CSC_EXEFLAG=/target:exe | ||||||
|         CSC_WINEXEFLAG=/target:winexe |         CSC_WINEXEFLAG=/target:winexe | ||||||
|         CSCFLAGS='/d:MONO /warn:4 /d:TRACE -d:LINUX' |         CSCFLAGS='/d:MONO /warn:4 /d:TRACE -d:LINUX' | ||||||
|         CSCFLAGS_DEBUG="/debug+ /d:DEBUG" |         CSCFLAGS_DEBUG="/debug+ /d:DEBUG" | ||||||
|         CSCFLAGS_OPTIMIZE="/optimize+" |         CSCFLAGS_OPTIMIZE="/optimize+" | ||||||
|         MONO=mono |         MONO=mono | ||||||
|         MONO_DEBUG='mono --debug' |         MONO_DEBUG='mono --debug' | ||||||
|         MONO_PATH= |         MONO_PATH= | ||||||
|         SYSTEM_XML='System.Xml.dll' |         SYSTEM_XML='System.Xml.dll' | ||||||
|     ;; |     ;; | ||||||
|     # |     # | ||||||
|     # .NET-specific configuration |     # .NET-specific configuration | ||||||
|     # |     # | ||||||
|     csc) |     csc) | ||||||
|         CSC_EXEFLAG=/target:exe |         CSC_EXEFLAG=/target:exe | ||||||
|         CSC_LIBFLAG=/target:library |         CSC_LIBFLAG=/target:library | ||||||
|         CSC_EXEFLAG=/target:exe |         CSC_EXEFLAG=/target:exe | ||||||
|         CSC_WINEXEFLAG=/target:winexe |         CSC_WINEXEFLAG=/target:winexe | ||||||
|         CSCFLAGS='/d:DOTNET /warn:4 /d:TRACE /nologo' |         CSCFLAGS='/d:DOTNET /warn:4 /d:TRACE /nologo' | ||||||
|         CSCFLAGS_DEBUG="/debug+ /d:DEBUG" |         CSCFLAGS_DEBUG="/debug+ /d:DEBUG" | ||||||
|         CSCFLAGS_OPTIMIZE="/optimize+" |         CSCFLAGS_OPTIMIZE="/optimize+" | ||||||
|         MONO= |         MONO= | ||||||
|         MONO_DEBUG= |         MONO_DEBUG= | ||||||
|         MONO_PATH= |         MONO_PATH= | ||||||
|         SYSTEM_XML='System.XML.dll' |         SYSTEM_XML='System.XML.dll' | ||||||
|     ;; |     ;; | ||||||
| esac | esac | ||||||
|  |  | ||||||
| AC_SUBST(CSC) | AC_SUBST(CSC) | ||||||
| AC_SUBST(CSC_EXEFLAG) | AC_SUBST(CSC_EXEFLAG) | ||||||
| AC_SUBST(CSC_LIBFLAG) | AC_SUBST(CSC_LIBFLAG) | ||||||
| AC_SUBST(CSC_WINEXEFLAG) | AC_SUBST(CSC_WINEXEFLAG) | ||||||
| AC_SUBST(CSCFLAGS) | AC_SUBST(CSCFLAGS) | ||||||
| AC_SUBST(CSCFLAGS_DEBUG) | AC_SUBST(CSCFLAGS_DEBUG) | ||||||
| AC_SUBST(MONO) | AC_SUBST(MONO) | ||||||
| AC_SUBST(MONO_PATH) | AC_SUBST(MONO_PATH) | ||||||
| AC_SUBST(SYSTEM_XML) | AC_SUBST(SYSTEM_XML) | ||||||
|  |  | ||||||
| SRCDIR='$(top_srcdir)' | SRCDIR='$(top_srcdir)' | ||||||
| DOCDIR="$SRCDIR/doc" | DOCDIR="$SRCDIR/doc" | ||||||
| TOOLDIR='$(top_srcdir)/tools' | TOOLDIR='$(top_srcdir)/tools' | ||||||
| AC_SUBST(SRCDIR) | AC_SUBST(SRCDIR) | ||||||
| AC_SUBST(DOCDIR) | AC_SUBST(DOCDIR) | ||||||
| AC_SUBST(TOOLDIR) | AC_SUBST(TOOLDIR) | ||||||
| EMPTY= | EMPTY= | ||||||
| SPACE='$(EMPTY) $(EMPTY)' | SPACE='$(EMPTY) $(EMPTY)' | ||||||
|  |  | ||||||
| AC_SUBST(EMPTY) | AC_SUBST(EMPTY) | ||||||
| AC_SUBST(SPACE) | AC_SUBST(SPACE) | ||||||
|  |  | ||||||
| # | # | ||||||
| # Check for operating system and set TARGET_OS  | # Check for operating system and set TARGET_OS  | ||||||
| # | # | ||||||
| case $host_os in | case $host_os in | ||||||
|     cygwin*) |     cygwin*) | ||||||
|         TARGET_OS='windows' |         TARGET_OS='windows' | ||||||
|     ;; |     ;; | ||||||
|     *) |     *) | ||||||
| 	TARGET_OS='linux' | 	TARGET_OS='linux' | ||||||
|     ;; |     ;; | ||||||
| esac | esac | ||||||
|  |  | ||||||
| AC_SUBST(TARGET_OS) | AC_SUBST(TARGET_OS) | ||||||
| AM_CONDITIONAL(LINUX, test "$TARGET_OS" = "linux") | AM_CONDITIONAL(LINUX, test "$TARGET_OS" = "linux") | ||||||
| AM_CONDITIONAL(WINDOWS, test "$TARGET_OS" = "windows") | AM_CONDITIONAL(WINDOWS, test "$TARGET_OS" = "windows") | ||||||
|  |  | ||||||
| # | # | ||||||
| # Check for architecture and set TARGET_ARCH | # Check for architecture and set TARGET_ARCH | ||||||
| # ia64 needs to be treated as non64. | # ia64 needs to be treated as non64. | ||||||
|  |  | ||||||
| case $target_cpu in | case $target_cpu in | ||||||
|     x86_64|p*pc64|s390x) |     x86_64|p*pc64|s390x) | ||||||
|         LIB=lib64 |         LIB=lib64 | ||||||
|     ;; |     ;; | ||||||
|     *ia64|*) |     *ia64|*) | ||||||
|         LIB=lib |         LIB=lib | ||||||
|     ;; |     ;; | ||||||
| esac | esac | ||||||
|  |  | ||||||
| AC_SUBST(LIB) | AC_SUBST(LIB) | ||||||
| AM_CONDITIONAL(LIB64, test "$LIB" = lib64) | AM_CONDITIONAL(LIB64, test "$LIB" = lib64) | ||||||
|  |  | ||||||
| # | # | ||||||
| # | # | ||||||
| # Set platform-specific variables | # Set platform-specific variables | ||||||
| # | # | ||||||
| case $TARGET_OS in | case $TARGET_OS in | ||||||
|     # |     # | ||||||
|     # Linux-specific configuration |     # Linux-specific configuration | ||||||
|     # |     # | ||||||
|     linux) |     linux) | ||||||
|         # |         # | ||||||
|         # Set variables |         # Set variables | ||||||
|         # |         # | ||||||
|         COMMON_CLEAN_FILES='' |         COMMON_CLEAN_FILES='' | ||||||
|         ICON_EXT='.ico' |         ICON_EXT='.ico' | ||||||
|         ICON_FLAG='/resource:' |         ICON_FLAG='/resource:' | ||||||
|         PLATFORM_SUBDIRS=$LINUX_SUBDIRS |         PLATFORM_SUBDIRS=$LINUX_SUBDIRS | ||||||
|         SEP='/' |         SEP='/' | ||||||
| 	LINK=gcc | 	LINK=gcc | ||||||
|     ;; |     ;; | ||||||
|     # |     # | ||||||
|     # Windows-specific configuration |     # Windows-specific configuration | ||||||
|     # |     # | ||||||
|     windows) |     windows) | ||||||
|         COMMON_CLEAN_FILES='*.suo */*.suo *.csproj.user */*.csproj.user bin obj */bin */obj *.xml */*.xml *.pdb */*.pdb' |         COMMON_CLEAN_FILES='*.suo */*.suo *.csproj.user */*.csproj.user bin obj */bin */obj *.xml */*.xml *.pdb */*.pdb' | ||||||
|         ICON_EXT='.ico' |         ICON_EXT='.ico' | ||||||
|         ICON_FLAG='/win32icon:' |         ICON_FLAG='/win32icon:' | ||||||
|         PLATFORM_SUBDIRS=$WINDOWS_SUBDIRS |         PLATFORM_SUBDIRS=$WINDOWS_SUBDIRS | ||||||
|         SEP='$(EMPTY)\\$(EMPTY)' |         SEP='$(EMPTY)\\$(EMPTY)' | ||||||
| 	LINK=link.exe | 	LINK=link.exe | ||||||
|     ;; |     ;; | ||||||
| esac | esac | ||||||
| AC_SUBST(COMMON_CLEAN_FILES) | AC_SUBST(COMMON_CLEAN_FILES) | ||||||
| AC_SUBST(ICON_EXT) | AC_SUBST(ICON_EXT) | ||||||
| AC_SUBST(ICON_FLAG) | AC_SUBST(ICON_FLAG) | ||||||
| AC_SUBST(PLATFORM_SUBDIRS) | AC_SUBST(PLATFORM_SUBDIRS) | ||||||
| AC_SUBST(SEP) | AC_SUBST(SEP) | ||||||
| AC_SUBST(LINK) | AC_SUBST(LINK) | ||||||
|  |  | ||||||
| # | # | ||||||
| # Run standard macros | # Run standard macros | ||||||
| # | # | ||||||
| AM_PROG_CC_STDC | AM_PROG_CC_STDC | ||||||
| AC_PROG_INSTALL | AC_PROG_INSTALL | ||||||
| AC_HEADER_STDC | AC_HEADER_STDC | ||||||
|  |  | ||||||
| ####### | ####### | ||||||
| # | # | ||||||
| # set CFLAGS | # set CFLAGS | ||||||
| # | # | ||||||
| case $host_os in | case $host_os in | ||||||
|    linux*) |    linux*) | ||||||
|     CFLAGS="$CFLAGS" |     CFLAGS="$CFLAGS" | ||||||
|    ;; |    ;; | ||||||
|    cygwin*) |    cygwin*) | ||||||
|    CC=cl.exe |    CC=cl.exe | ||||||
|    CFLAGS="-D WIN32 -D SSCS_WIN32_PLAT_F -D N_PLAT_CLIENT -MT -Ox" |    CFLAGS="-D WIN32 -D SSCS_WIN32_PLAT_F -D N_PLAT_CLIENT -MT -Ox" | ||||||
|    ;; |    ;; | ||||||
| esac | esac | ||||||
|  |  | ||||||
| # | # | ||||||
| # Handle --enable-debug | # Handle --enable-debug | ||||||
| # | # | ||||||
| AC_ARG_ENABLE(debug, [ | AC_ARG_ENABLE(debug, [ | ||||||
|   --enable-debug          configure the Makefiles to build in DEBUG mode], |   --enable-debug          configure the Makefiles to build in DEBUG mode], | ||||||
|     [case "${enableval}" in |     [case "${enableval}" in | ||||||
|         yes) enable_debug=true ;; |         yes) enable_debug=true ;; | ||||||
|         no)  enable_debug=false ;; |         no)  enable_debug=false ;; | ||||||
|         *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;; |         *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;; | ||||||
|     esac],[enable_debug=false]) |     esac],[enable_debug=false]) | ||||||
| AM_CONDITIONAL(DEBUG, test x$enable_debug = xtrue) | AM_CONDITIONAL(DEBUG, test x$enable_debug = xtrue) | ||||||
| if test "$enable_debug" = "true" | if test "$enable_debug" = "true" | ||||||
| then | then | ||||||
|   # Build debug version. |   # Build debug version. | ||||||
|  # CFLAGS="$CFLAGS_DEBUG $CFLAGS -DDBG -DDEBUG" |  # CFLAGS="$CFLAGS_DEBUG $CFLAGS -DDBG -DDEBUG" | ||||||
|   CFLAGS="$CFLAGS_DEBUG $CFLAGS -g -DDBG -DDEBUG \ |   CFLAGS="$CFLAGS_DEBUG $CFLAGS -g -DDBG -DDEBUG \ | ||||||
| -fPIC -DPIC -DSSCS_LINUX_PLAT_F -O2 -fmessage-length=0 -Wall \ | -fPIC -DPIC -DSSCS_LINUX_PLAT_F -O2 -fmessage-length=0 -Wall \ | ||||||
| -D_REENTRANT -DALIGNMENT -DN_PLAT_UNIX \ | -D_REENTRANT -DALIGNMENT -DN_PLAT_UNIX \ | ||||||
| -DUNIX -DLINUX -DIAPX38" | -DUNIX -DLINUX -DIAPX38" | ||||||
|   CSCFLAGS="$CSCFLAGS_DEBUG $CSCFLAGS" |   CSCFLAGS="$CSCFLAGS_DEBUG $CSCFLAGS" | ||||||
|   CXXFLAGS="$CXXFLAGS_DEBUG $CXXFLAGS" |   CXXFLAGS="$CXXFLAGS_DEBUG $CXXFLAGS" | ||||||
|   DEVENV_CONFIGURATION=Debug |   DEVENV_CONFIGURATION=Debug | ||||||
|   MONO=$MONO_DEBUG |   MONO=$MONO_DEBUG | ||||||
| else | else | ||||||
|   # Build optimized version. |   # Build optimized version. | ||||||
|   CFLAGS="$CFLAGS_OPTIMIZE $CFLAGS -g -fPIC -DPIC \ |   CFLAGS="$CFLAGS_OPTIMIZE $CFLAGS -g -fPIC -DPIC \ | ||||||
| -DSSCS_LINUX_PLAT_F -O2 -fmessage-length=0 -Wall \ | -DSSCS_LINUX_PLAT_F -O2 -fmessage-length=0 -Wall \ | ||||||
| -D_REENTRANT -DALIGNMENT -DN_PLAT_UNIX \ | -D_REENTRANT -DALIGNMENT -DN_PLAT_UNIX \ | ||||||
| -DUNIX -DLINUX -DIAPX38" | -DUNIX -DLINUX -DIAPX38" | ||||||
|   CSCFLAGS="$CSCFLAGS_OPTIMIZE $CSCFLAGS" |   CSCFLAGS="$CSCFLAGS_OPTIMIZE $CSCFLAGS" | ||||||
|   CXXFLAGS="$CXXFLAGS_OPTIMIZE $CXXFLAGS" |   CXXFLAGS="$CXXFLAGS_OPTIMIZE $CXXFLAGS" | ||||||
|   DEVENV_CONFIGURATION=Release |   DEVENV_CONFIGURATION=Release | ||||||
| fi | fi | ||||||
| AC_SUBST(CSCFLAGS) | AC_SUBST(CSCFLAGS) | ||||||
| AC_SUBST(DEVENV_CONFIGURATION) | AC_SUBST(DEVENV_CONFIGURATION) | ||||||
|  |  | ||||||
| ##comment out due to build failure | ##comment out due to build failure | ||||||
| # Check for GCC version to add fstack-protector flag | # Check for GCC version to add fstack-protector flag | ||||||
| # | # | ||||||
| #GCC_VER="`gcc -dumpversion`" | #GCC_VER="`gcc -dumpversion`" | ||||||
| #case "$GCC_VER" in | #case "$GCC_VER" in | ||||||
| #        3*) | #        3*) | ||||||
| #	;; | #	;; | ||||||
| #        4*) | #        4*) | ||||||
| #        CFLAGS="$CFLAGS -fstack-protector" | #        CFLAGS="$CFLAGS -fstack-protector" | ||||||
| #	;; | #	;; | ||||||
| #        *) | #        *) | ||||||
| #        ;; | #        ;; | ||||||
| #esac | #esac | ||||||
|                                                                                                                |                                                                                                                | ||||||
| AC_SUBST(GCC_VER) | AC_SUBST(GCC_VER) | ||||||
|  |  | ||||||
| # | # | ||||||
| # Configure PKG_CONFIG | # Configure PKG_CONFIG | ||||||
| # | # | ||||||
| AC_PATH_PROG(PKG_CONFIG, pkg-config, no) | AC_PATH_PROG(PKG_CONFIG, pkg-config, no) | ||||||
| if test "x$PKG_CONFIG" = "xno"; then | if test "x$PKG_CONFIG" = "xno"; then | ||||||
| 	AC_MSG_ERROR([You need to install pkg-config]) | 	AC_MSG_ERROR([You need to install pkg-config]) | ||||||
| fi | fi | ||||||
|  |  | ||||||
| # | # | ||||||
| # Configure files | # Configure files | ||||||
| # | # | ||||||
| AC_OUTPUT([ | AC_OUTPUT([ | ||||||
| Makefile | Makefile | ||||||
| package/Makefile | package/Makefile | ||||||
| package/linux/Makefile | package/linux/Makefile | ||||||
| package/linux/CASA_auth_token_svc.spec | package/linux/CASA_auth_token_svc.spec | ||||||
| package/linux/CASA_auth_token_svc_4zen.spec | package/linux/CASA_auth_token_svc_4zen.spec | ||||||
| package/windows/Makefile | package/windows/Makefile | ||||||
| package/windows/ClientKeystoreSetup/Makefile | package/windows/ClientKeystoreSetup/Makefile | ||||||
| package/windows/InitConfigFile/Makefile | package/windows/CommandLauncher/Makefile | ||||||
| package/windows/MungeCryptoPropertiesFilePath/Makefile | package/windows/InitConfigFile/Makefile | ||||||
| package/windows/ServerKeystoreSetup/Makefile | package/windows/MungeCryptoPropertiesFilePath/Makefile | ||||||
| package/windows/SetupAsWindowsService/Makefile | package/windows/ServerKeystoreSetup/Makefile | ||||||
| package/windows/UpdateWarFile/Makefile | package/windows/SetupAsWindowsService/Makefile | ||||||
| package/windows/server-java_msi/Makefile | package/windows/UpdateWarFile/Makefile | ||||||
| Svc/Makefile | package/windows/server-java_msi/Makefile | ||||||
| Svc/external/Makefile | Svc/Makefile | ||||||
| Svc/src/Makefile | Svc/external/Makefile | ||||||
| Svc/src/com/Makefile | Svc/src/Makefile | ||||||
| Svc/src/com/novell/Makefile | Svc/src/com/Makefile | ||||||
| Svc/src/com/novell/casa/Makefile | Svc/src/com/novell/Makefile | ||||||
| Svc/src/com/novell/casa/authtoksvc/Makefile | Svc/src/com/novell/casa/Makefile | ||||||
| Svc/tomcat5/Makefile | Svc/src/com/novell/casa/authtoksvc/Makefile | ||||||
| Svc/tomcat5/conf/Makefile | Svc/tomcat5/Makefile | ||||||
| Svc/tomcat5/conf/Catalina/Makefile | Svc/tomcat5/conf/Makefile | ||||||
| Svc/tomcat5/conf/Catalina/localhost/Makefile | Svc/tomcat5/conf/Catalina/Makefile | ||||||
| Svc/tomcat5/conf/linux/Makefile | Svc/tomcat5/conf/Catalina/localhost/Makefile | ||||||
| Svc/tomcat5/conf/linux/zen/Makefile | Svc/tomcat5/conf/linux/Makefile | ||||||
| Svc/tomcat5/conf/windows/Makefile | Svc/tomcat5/conf/linux/zen/Makefile | ||||||
| Svc/linux/Makefile | Svc/tomcat5/conf/windows/Makefile | ||||||
| Svc/templates/Makefile | Svc/linux/Makefile | ||||||
| Svc/manifest/Makefile | Svc/templates/Makefile | ||||||
| Svc/windows/Makefile | Svc/manifest/Makefile | ||||||
| Jaas/Makefile | Svc/windows/Makefile | ||||||
| Jaas/src/Makefile | Jaas/Makefile | ||||||
| Jaas/src/com/Makefile | Jaas/src/Makefile | ||||||
| Jaas/src/com/novell/Makefile | Jaas/src/com/Makefile | ||||||
| Jaas/src/com/novell/casa/Makefile | Jaas/src/com/novell/Makefile | ||||||
| Jaas/src/com/novell/casa/jaas/Makefile | Jaas/src/com/novell/casa/Makefile | ||||||
| Jaas/src/com/novell/casa/jaas/sample/Makefile | Jaas/src/com/novell/casa/jaas/Makefile | ||||||
| Jaas/linux/Makefile | Jaas/src/com/novell/casa/jaas/sample/Makefile | ||||||
| Jaas/windows/Makefile | Jaas/linux/Makefile | ||||||
| ]) | Jaas/windows/Makefile | ||||||
|  | ]) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,373 +1,372 @@ | |||||||
| /*********************************************************************** | /*********************************************************************** | ||||||
|  *  |  *  | ||||||
|  *  Copyright (C) 2006 Novell, Inc. All Rights Reserved. |  *  Copyright (C) 2006 Novell, Inc. All Rights Reserved. | ||||||
|  * |  * | ||||||
|  *  This library is free software; you can redistribute it and/or |  *  This library is free software; you can redistribute it and/or | ||||||
|  *  modify it under the terms of the GNU Lesser General Public |  *  modify it under the terms of the GNU Lesser General Public | ||||||
|  *  License as published by the Free Software Foundation; version 2.1 |  *  License as published by the Free Software Foundation; version 2.1 | ||||||
|  *  of the License. |  *  of the License. | ||||||
|  * |  * | ||||||
|  *  This library is distributed in the hope that it will be useful, |  *  This library is distributed in the hope that it will be useful, | ||||||
|  *  but WITHOUT ANY WARRANTY; without even the implied warranty of |  *  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
|  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU |  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
|  *  Library Lesser General Public License for more details. |  *  Library Lesser General Public License for more details. | ||||||
|  * |  * | ||||||
|  *  You should have received a copy of the GNU Lesser General Public |  *  You should have received a copy of the GNU Lesser General Public | ||||||
|  *  License along with this library; if not, Novell, Inc. |  *  License along with this library; if not, Novell, Inc. | ||||||
|  *  |  *  | ||||||
|  *  To contact Novell about this file by physical or electronic mail,  |  *  To contact Novell about this file by physical or electronic mail,  | ||||||
|  *  you may find current contact information at www.novell.com. |  *  you may find current contact information at www.novell.com. | ||||||
|  *  |  *  | ||||||
|  *  Author: Juan Carlos Luciani <jluciani@novell.com> |  *  Author: Juan Carlos Luciani <jluciani@novell.com> | ||||||
|  *   |  *   | ||||||
|  ***********************************************************************/ |  ***********************************************************************/ | ||||||
| 
 | 
 | ||||||
| package ClientKeystoreSetup; | import java.io.*; | ||||||
| 
 | import java.util.*; | ||||||
| //       $KEYTOOL_PATH -import -noprompt -keystore /etc/CASA/authtoken/keys/client/jks-store -alias signingCert -storepass secret -keypass secret -file /etc/CASA/authtoken/keys/casaatsdSigningCert | 
 | ||||||
| 
 | public class ClientKeystoreSetup | ||||||
| 
 | { | ||||||
| import java.io.*; | 	final static int ERROR_NO_ERROR = 0; | ||||||
| import java.util.*; | 	final static int ERROR_EXEC_FAILED = -1; | ||||||
| 
 | 	final static int ERROR_INVALID_NUMBER_OF_PARAMS = -2; | ||||||
| public class Program | 	final static int ERROR_BAD_INSTALL_DIR_PARAM = -3; | ||||||
| { | 	final static int ERROR_MISSING_INSTALL_DIR = -4; | ||||||
| 	final static int ERROR_NO_ERROR = 0; | 	final static int ERROR_INSTALL_DIR_NOT_A_DIR = -5; | ||||||
| 	final static int ERROR_EXEC_FAILED = -1; | 	final static int ERROR_BAD_PROPERTY_FILE_PARAM = -6; | ||||||
| 	final static int ERROR_INVALID_NUMBER_OF_PARAMS = -2; | 	final static int ERROR_MISSING_PROPERTIES_FILE = -7; | ||||||
| 	final static int ERROR_BAD_INSTALL_DIR_PARAM = -3; | 	final static int ERROR_UNABLE_TO_READ_PROPERTIES = -8; | ||||||
| 	final static int ERROR_MISSING_INSTALL_DIR = -4; | 	final static int ERROR_UNKNOWN_PARAM = -9; | ||||||
| 	final static int ERROR_INSTALL_DIR_NOT_A_DIR = -5; | 	final static int ERROR_MISSING_INSTALL_DIR_PARAM = -10; | ||||||
| 	final static int ERROR_BAD_PROPERTY_FILE_PARAM = -6; | 	final static int ERROR_REQUIRED_VALUE_MISSING = -11; | ||||||
| 	final static int ERROR_MISSING_PROPERTIES_FILE = -7; | 	final static int ERROR_EXEC_INTERRUPTED = -12; | ||||||
| 	final static int ERROR_UNABLE_TO_READ_PROPERTIES = -8; | 	final static int ERROR_IO_EXCEPTION = -13; | ||||||
| 	final static int ERROR_UNKNOWN_PARAM = -9; | 
 | ||||||
| 	final static int ERROR_MISSING_INSTALL_DIR_PARAM = -10; | 	final static String INSTALL_DIR = "installdir="; | ||||||
| 	final static int ERROR_REQUIRED_VALUE_MISSING = -11; | 	final static String PROPERTY_FILE = "propertyfile="; | ||||||
| 	final static int ERROR_EXEC_INTERRUPTED = -12; | 
 | ||||||
| 
 | 	String sInstallDir; | ||||||
| 	final static String INSTALL_DIR = "installdir="; | 	Properties properties; | ||||||
| 	final static String PROPERTY_FILE = "propertyfile="; | 
 | ||||||
| 
 | 	// debug stuff | ||||||
| 	String sInstallDir; | 	File file; | ||||||
| 	Properties properties; | 	FileWriter fw; | ||||||
| 
 | 
 | ||||||
| 	// debug stuff | 	public static void main(String[] args) | ||||||
| 	File file; | 	{ | ||||||
| 	FileWriter fw; | 		ClientKeystoreSetup p = new ClientKeystoreSetup(args); | ||||||
| 
 | 		p = null; | ||||||
| 	public static void main(String[] args) | 	} | ||||||
| 	{ | 
 | ||||||
| 		Program p = new Program(args); | 	ClientKeystoreSetup(String[] args) | ||||||
| 		p = null; | 	{ | ||||||
| 	} | 		int rc; | ||||||
| 
 | 
 | ||||||
| 	Program(String[] args) | 		try | ||||||
| 	{ | 		{ | ||||||
| 		int rc; | 			// DEBUG STUFF | ||||||
| 
 | 			file = new File("c:\\test4.log"); | ||||||
| 		try | 			fw = new FileWriter(file); | ||||||
| 		{ | 
 | ||||||
| 			// DEBUG STUFF | 			log("Here we go again: " + args.length); | ||||||
| 			file = new File("c:\\test4.log"); | 			for (int i = 0; i < args.length; i++) | ||||||
| 			fw = new FileWriter(file); | 			{ | ||||||
| 
 | 				log("Arg " + i + " = " + args[i] + "\r\n"); | ||||||
| 			log("Here we go again: " + args.length); | 			} | ||||||
| 			for (int i = 0; i < args.length; i++) | 			// DEBUG STUFF | ||||||
| 			{ | 
 | ||||||
| 				log("Arg " + i + " = " + args[i] + "\r\n"); | 			// Process the input params | ||||||
| 			} | 			if (ERROR_NO_ERROR == (rc = processArgs(args))) | ||||||
| 			// DEBUG STUFF | 			{ | ||||||
| 
 | 				// Make sure we got everything we need | ||||||
| 			// Process the input params | 				if (ERROR_NO_ERROR == (rc = findRequiredValues())) | ||||||
| 			if (ERROR_NO_ERROR == (rc = processArgs(args))) | 				{ | ||||||
| 			{ | 					// Make sure the client keystore has been created | ||||||
| 				// Make sure we got everything we need | 					rc = createClientKeystore(); | ||||||
| 				if (ERROR_NO_ERROR == (rc = findRequiredValues())) | 				} | ||||||
| 				{ | 			} | ||||||
| 					// Make sure the client keystore has been created | 
 | ||||||
| 					rc = createClientKeystore(); | 			// DEBUG STUFF | ||||||
| 				} | 			log(rc); | ||||||
| 			} | 			fw.flush(); | ||||||
| 
 | 			fw.close(); | ||||||
| 			// DEBUG STUFF | 			// DEBUG STUFF | ||||||
| 			log(rc); | 		} | ||||||
| 			fw.flush(); | 		catch (IOException e) | ||||||
| 			fw.close(); | 		{ | ||||||
| 			// DEBUG STUFF | 			rc = ERROR_IO_EXCEPTION; | ||||||
| 		} | 		} | ||||||
| 		catch (IOException e) | 		System.exit(rc); | ||||||
| 		{ | 	} | ||||||
| 			rc = -54;//ERROR_IO_EXCEPTION; | 
 | ||||||
| 		} | 	int processArgs(String[] args) | ||||||
| 		System.exit(rc); | 	{ | ||||||
| 	} | 		String sProperties; | ||||||
| 
 | 		File fileInstallDir = null; | ||||||
| 	int processArgs(String[] args) | 		File fileProperties = null; | ||||||
| 	{ | 		FileInputStream fisProperties = null; | ||||||
| 		String sProperties; | 		int i; | ||||||
| 		File fileInstallDir = null; | 
 | ||||||
| 		File fileProperties = null; | 		// Validate the number of parameters | ||||||
| 		FileInputStream fisProperties = null; | 		if (args.length < 2) | ||||||
| 		int i; | 		{ | ||||||
| 
 | 			return ERROR_INVALID_NUMBER_OF_PARAMS; | ||||||
| 		// Validate the number of parameters | 		} | ||||||
| 		if (args.length < 2) | 
 | ||||||
| 		{ | 		for (i = 0; i < args.length; i++) | ||||||
| 			return ERROR_INVALID_NUMBER_OF_PARAMS; | 		{ | ||||||
| 		} | 			// is this the install dir param? | ||||||
| 
 | 			if (args[i].startsWith(INSTALL_DIR)) | ||||||
| 		for (i = 0; i < args.length; i++) | 			{ | ||||||
| 		{ | 				// Make sure it is more the the param tag | ||||||
| 			// is this the install dir param? | 				if (args[i].length() <= INSTALL_DIR.length()) | ||||||
| 			if (args[i].startsWith(INSTALL_DIR)) | 				{ | ||||||
| 			{ | 					return ERROR_BAD_INSTALL_DIR_PARAM; | ||||||
| 				// Make sure it is more the the param tag | 				} | ||||||
| 				if (args[i].length() <= INSTALL_DIR.length()) | 
 | ||||||
| 				{ | 				sInstallDir = args[i].substring(INSTALL_DIR.length()).trim(); | ||||||
| 					return ERROR_BAD_INSTALL_DIR_PARAM; | 				fileInstallDir = new File(sInstallDir); | ||||||
| 				} | 
 | ||||||
| 
 | 				// Make sure the install dir can be found | ||||||
| 				sInstallDir = args[i].substring(INSTALL_DIR.length()).trim(); | 				if (!fileInstallDir.exists()) | ||||||
| 				fileInstallDir = new File(sInstallDir); | 				{ | ||||||
| 
 | 					return ERROR_MISSING_INSTALL_DIR; | ||||||
| 				// Make sure the install dir can be found | 				} | ||||||
| 				if (!fileInstallDir.exists()) | 
 | ||||||
| 				{ | 				// Make sure the install dir is a directory | ||||||
| 					return ERROR_MISSING_INSTALL_DIR; | 				if (!fileInstallDir.isDirectory()) | ||||||
| 				} | 				{ | ||||||
| 
 | 					return ERROR_INSTALL_DIR_NOT_A_DIR; | ||||||
| 				// Make sure the install dir is a directory | 				} | ||||||
| 				if (!fileInstallDir.isDirectory()) | 			} | ||||||
| 				{ | 
 | ||||||
| 					return ERROR_INSTALL_DIR_NOT_A_DIR; | 			// is this the properties file param? | ||||||
| 				} | 			else if (args[i].startsWith(PROPERTY_FILE)) | ||||||
| 			} | 			{ | ||||||
| 
 | 				// Make sure it is more the the param tag | ||||||
| 			// is this the properties file param? | 				if (args[i].length() <= PROPERTY_FILE.length()) | ||||||
| 			else if (args[i].startsWith(PROPERTY_FILE)) | 				{ | ||||||
| 			{ | 					return ERROR_BAD_PROPERTY_FILE_PARAM; | ||||||
| 				// Make sure it is more the the param tag | 				} | ||||||
| 				if (args[i].length() <= PROPERTY_FILE.length()) | 
 | ||||||
| 				{ | 				sProperties = args[i].substring(PROPERTY_FILE.length()).trim(); | ||||||
| 					return ERROR_BAD_PROPERTY_FILE_PARAM; | 				fileProperties = new File(sProperties); | ||||||
| 				} | 
 | ||||||
| 
 | 				// Make sure the properties file can be found | ||||||
| 				sProperties = args[i].substring(PROPERTY_FILE.length()).trim(); | 				if (!fileProperties.exists()) | ||||||
| 				fileProperties = new File(sProperties); | 				{ | ||||||
| 
 | 					return ERROR_MISSING_PROPERTIES_FILE; | ||||||
| 				// Make sure the properties file can be found | 				} | ||||||
| 				if (!fileProperties.exists()) | 
 | ||||||
| 				{ | 				// Read the properties | ||||||
| 					return ERROR_MISSING_PROPERTIES_FILE; | 				try | ||||||
| 				} | 				{ | ||||||
| 
 | 					fisProperties = new FileInputStream(fileProperties); | ||||||
| 				// Read the properties | 					properties = new Properties(); | ||||||
| 				try | 					properties.load(fisProperties); | ||||||
| 				{ | 				} | ||||||
| 					fisProperties = new FileInputStream(fileProperties); | 				catch (IOException ioe) | ||||||
| 					properties = new Properties(); | 				{ | ||||||
| 					properties.load(fisProperties); | 					return ERROR_UNABLE_TO_READ_PROPERTIES; | ||||||
| 				} | 				} | ||||||
| 				catch (IOException ioe) | 			} | ||||||
| 				{ | 
 | ||||||
| 					return ERROR_UNABLE_TO_READ_PROPERTIES; | 			// Unknown parameter | ||||||
| 				} | 			else | ||||||
| 			} | 			{ | ||||||
| 
 | 				log(ERROR_UNKNOWN_PARAM, args[i]); | ||||||
| 			// Unknown parameter | 				return ERROR_UNKNOWN_PARAM; | ||||||
| 			else | 			} | ||||||
| 			{ | 		} | ||||||
| 				log(ERROR_UNKNOWN_PARAM, args[i]); | 
 | ||||||
| 				return ERROR_UNKNOWN_PARAM; | 		// Make sure we got an install dir | ||||||
| 			} | 		if (null == fileInstallDir) | ||||||
| 		} | 		{ | ||||||
| 
 | 			return ERROR_MISSING_INSTALL_DIR_PARAM; | ||||||
| 		// Make sure we got an install dir | 		} | ||||||
| 		if (null == fileInstallDir) | 
 | ||||||
| 		{ | 		return ERROR_NO_ERROR; | ||||||
| 			return ERROR_MISSING_INSTALL_DIR_PARAM; | 	} | ||||||
| 		} | 
 | ||||||
| 
 | 	int findRequiredValues() | ||||||
| 		return ERROR_NO_ERROR; | 	{ | ||||||
| 	} | 		String[] rgsRequired = {  | ||||||
| 
 | 			"ATS_JAVA_HOME"}; | ||||||
| 	int findRequiredValues() | 		int i; | ||||||
| 	{ | 		String sValue; | ||||||
| 		String[] rgsRequired = {  | 
 | ||||||
| 			"ATS_JAVA_HOME"}; | 		for (i = 0; i < rgsRequired.length; i++) | ||||||
| 		int i; | 		{ | ||||||
| 		String sValue; | 			log("look for required value: " + rgsRequired[i]); | ||||||
| 
 | 
 | ||||||
| 		for (i = 0; i < rgsRequired.length; i++) | 			if (!properties.containsKey(rgsRequired[i])) | ||||||
| 		{ | 			{ | ||||||
| 			log("look for required value: " + rgsRequired[i]); | 				log("look for required value in envirement: " + rgsRequired[i]); | ||||||
| 
 | 				if (null == (sValue = System.getProperty(rgsRequired[i]))) | ||||||
| 			if (!properties.containsKey(rgsRequired[i])) | 				{ | ||||||
| 			{ | 					log("unable to find required value in envirement: " + rgsRequired[i]); | ||||||
| 				log("look for required value in envirement: " + rgsRequired[i]); | 					return ERROR_REQUIRED_VALUE_MISSING; | ||||||
| 				if (null == (sValue = System.getProperty(rgsRequired[i]))) | 				} | ||||||
| 				{ | 				log("found required value in envirement: " + rgsRequired[i] + "  =  " + sValue); | ||||||
| 					log("unable to find required value in envirement: " + rgsRequired[i]); | 				properties.put(rgsRequired[i], sValue); | ||||||
| 					return ERROR_REQUIRED_VALUE_MISSING; | 			} | ||||||
| 				} | 			log("found required value: " + rgsRequired[i] + "  =  " + properties.get(rgsRequired[i])); | ||||||
| 				log("found required value in envirement: " + rgsRequired[i] + "  =  " + sValue); | 		} | ||||||
| 				properties.put(rgsRequired[i], sValue); | 		return ERROR_NO_ERROR; | ||||||
| 			} | 	} | ||||||
| 			log("found required value: " + rgsRequired[i] + "  =  " + properties.get(rgsRequired[i])); | 
 | ||||||
| 		} | 
 | ||||||
| 		return ERROR_NO_ERROR; | 	int createClientKeystore() | ||||||
| 	} | 	{ | ||||||
| 
 | 		int rc; | ||||||
| 
 | 		String sKeytool = properties.get("ATS_JAVA_HOME") + "\\bin\\keytool.exe"; | ||||||
| 	int createClientKeystore() | 
 | ||||||
| 	{ | 		log("keytool = " + sKeytool); | ||||||
| 		int rc; | 
 | ||||||
| 		String sKeytool = properties.get("ATS_JAVA_HOME") + "\\bin\\keytool.exe"; | 		// Do not do anything if the server keystore has already been created | ||||||
| 
 | 		if (keyStoreAlreadyExists()) | ||||||
| 		log("keytool = " + sKeytool); | 		{ | ||||||
| 
 | 			return ERROR_NO_ERROR; | ||||||
| 		// Do not do anything if the server keystore has already been created | 		} | ||||||
| 		if (keyStoreAlreadyExists()) | 
 | ||||||
| 		{ | 		// Import the servers certificate in the client keystore | ||||||
| 			return ERROR_NO_ERROR; | 		rc = invokeCommand(sKeytool + " -import -noprompt -keystore " + | ||||||
| 		} | 			sInstallDir + "ats\\etc\\keys\\client\\jks-store -alias signingCert -storepass secret -keypass secret -file " +  | ||||||
| 
 | 			sInstallDir + "ats\\etc\\keys\\casaatsdSigningCert"); | ||||||
| 		// Import the servers certificate in the client keystore | 
 | ||||||
| 		rc = invokeCommand(sKeytool + " -import -noprompt -keystore " + | 		return rc; | ||||||
| 			sInstallDir + "ats\\etc\\keys\\client\\jks-store -alias signingCert -storepass secret -keypass secret -file " +  | 	} | ||||||
| 			sInstallDir + "ats\\etc\\keys\\casaatsdSigningCert"); | 
 | ||||||
| 
 | 	boolean keyStoreAlreadyExists() | ||||||
| 		return rc; | 	{ | ||||||
| 	} | 		File fileKeystore = new File(sInstallDir + "ats\\etc\\keys\\client\\jks-store"); | ||||||
| 
 | 
 | ||||||
| 	boolean keyStoreAlreadyExists() | 		// Why is this always returning true?  exists() also always returns true. | ||||||
| 	{ | 		// log("keystore (" + sInstallDir + "ats\\etc\\keys\\client\\jks-store" + ") already exists = " + (file.isFile())); | ||||||
| 		File fileKeystore = new File(sInstallDir + "ats\\etc\\keys\\client\\jks-store"); | 		//		return (file.isFile()); | ||||||
| 
 | 
 | ||||||
| 		// Why is this always returning true?  exists() also always returns true. | 		File fileParent = fileKeystore.getParentFile(); | ||||||
| 		// log("keystore (" + sInstallDir + "ats\\etc\\keys\\client\\jks-store" + ") already exists = " + (file.isFile())); | 		String[] rgChildren = fileParent.list(); | ||||||
| 		//		return (file.isFile()); | 		if (null != rgChildren) | ||||||
| 
 | 		{ | ||||||
| 		File fileParent = fileKeystore.getParentFile(); | 			for (int i = 0; i < rgChildren.length; i++) | ||||||
| 		String[] rgChildren = fileParent.list(); | 			{ | ||||||
| 		if (null != rgChildren) | 				log("child " + i + " = " + rgChildren[i]); | ||||||
| 		{ | 				if ("jks-store".equals(rgChildren[i])) | ||||||
| 			for (int i = 0; i < rgChildren.length; i++) | 				{ | ||||||
| 			{ | 					return true; | ||||||
| 				log("child " + i + " = " + rgChildren[i]); | 				} | ||||||
| 				if ("jks-store".equals(rgChildren[i])) | 			} | ||||||
| 				{ | 		} | ||||||
| 					return true; | 
 | ||||||
| 				} | 		return false; | ||||||
| 			} | 	} | ||||||
| 		} | 
 | ||||||
| 
 | 	int invokeCommand(String sCommand) | ||||||
| 		return false; | 	{ | ||||||
| 	} | 		Process p; | ||||||
| 
 | 		int rc; | ||||||
| 	int invokeCommand(String sCommand) | 
 | ||||||
| 	{ | 		log("invoke command: " + sCommand); | ||||||
| 		Process p; | 		Runtime runtime = Runtime.getRuntime(); | ||||||
| 		int rc; | 
 | ||||||
| 
 | 		try | ||||||
| 		log("invoke command: " + sCommand); | 		{ | ||||||
| 		Runtime runtime = Runtime.getRuntime(); | 			p = runtime.exec(sCommand); | ||||||
| 
 | 			try | ||||||
| 		try | 			{ | ||||||
| 		{ | 				rc = p.waitFor(); | ||||||
| 			p = runtime.exec(sCommand); | 				log("invoke command return code: " + rc); | ||||||
| 			try | 			} | ||||||
| 			{ | 			catch (InterruptedException ie) | ||||||
| 				rc = p.waitFor(); | 			{ | ||||||
| 				log("invoke command return code: " + rc); | 				log(ERROR_EXEC_INTERRUPTED, sCommand); | ||||||
| 			} | 				return ERROR_EXEC_INTERRUPTED; | ||||||
| 			catch (InterruptedException ie) | 			} | ||||||
| 			{ | 		} | ||||||
| 				log(ERROR_EXEC_INTERRUPTED, sCommand); | 		catch (IOException e) | ||||||
| 				return ERROR_EXEC_INTERRUPTED; | 		{ | ||||||
| 			} | 			log("Ioexception"); | ||||||
| 		} | 			return ERROR_EXEC_FAILED; | ||||||
| 		catch (IOException e) | 		} | ||||||
| 		{ | 
 | ||||||
| 			log("Ioexception"); | 		return ERROR_NO_ERROR; | ||||||
| 			return ERROR_EXEC_FAILED; | 	} | ||||||
| 		} | 
 | ||||||
| 
 | 	void log(int err) | ||||||
| 		return ERROR_NO_ERROR; | 	{ | ||||||
| 	} | 		log(err, null); | ||||||
| 
 | 	} | ||||||
| 	void log(int err) | 
 | ||||||
| 	{ | 	void log(int err, String s) | ||||||
| 		log(err, null); | 	{ | ||||||
| 	} | 		String sMessage = ""; | ||||||
| 
 | 
 | ||||||
| 	void log(int err, String s) | 		switch (err) | ||||||
| 	{ | 		{ | ||||||
| 		String sMessage = ""; | 			case ERROR_NO_ERROR: | ||||||
| 
 | 				sMessage = "No error"; | ||||||
| 		switch (err) | 				break; | ||||||
| 		{ | 			case ERROR_EXEC_FAILED: | ||||||
| 			case ERROR_NO_ERROR: | 				sMessage = "Execute command failed "; | ||||||
| 				sMessage = "No error"; | 				break; | ||||||
| 				break; | 			case ERROR_INVALID_NUMBER_OF_PARAMS: | ||||||
| 			case ERROR_EXEC_FAILED: | 				sMessage = "Invalid number of params"; | ||||||
| 				sMessage = "Execute command failed "; | 				break; | ||||||
| 				break; | 			case ERROR_BAD_INSTALL_DIR_PARAM: | ||||||
| 			case ERROR_INVALID_NUMBER_OF_PARAMS: | 				sMessage = "Install dir parameter is bad"; | ||||||
| 				sMessage = "Invalid number of params"; | 				break; | ||||||
| 				break; | 			case ERROR_MISSING_INSTALL_DIR: | ||||||
| 			case ERROR_BAD_INSTALL_DIR_PARAM: | 				sMessage = "Missing install dir"; | ||||||
| 				sMessage = "Install dir parameter is bad"; | 				break; | ||||||
| 				break; | 			case ERROR_INSTALL_DIR_NOT_A_DIR: | ||||||
| 			case ERROR_MISSING_INSTALL_DIR: | 				sMessage = "Install dir is not a dir"; | ||||||
| 				sMessage = "Missing install dir"; | 				break; | ||||||
| 				break; | 			case ERROR_BAD_PROPERTY_FILE_PARAM: | ||||||
| 			case ERROR_INSTALL_DIR_NOT_A_DIR: | 				sMessage = "Invalid porperty file parameter"; | ||||||
| 				sMessage = "Install dir is not a dir"; | 				break; | ||||||
| 				break; | 			case ERROR_MISSING_PROPERTIES_FILE: | ||||||
| 			case ERROR_BAD_PROPERTY_FILE_PARAM: | 				sMessage = "Property file not found"; | ||||||
| 				sMessage = "Invalid porperty file parameter"; | 				break; | ||||||
| 				break; | 			case ERROR_UNABLE_TO_READ_PROPERTIES: | ||||||
| 			case ERROR_MISSING_PROPERTIES_FILE: | 				sMessage = "Unable to read property file"; | ||||||
| 				sMessage = "Property file not found"; | 				break; | ||||||
| 				break; | 			case ERROR_UNKNOWN_PARAM: | ||||||
| 			case ERROR_UNABLE_TO_READ_PROPERTIES: | 				sMessage = "Unknown parameter: "; | ||||||
| 				sMessage = "Unable to read property file"; | 				break; | ||||||
| 				break; | 			case ERROR_MISSING_INSTALL_DIR_PARAM: | ||||||
| 			case ERROR_UNKNOWN_PARAM: | 				sMessage = "Install dir parameter is missing"; | ||||||
| 				sMessage = "Unknown parameter: "; | 				break; | ||||||
| 				break; | 			case ERROR_REQUIRED_VALUE_MISSING: | ||||||
| 			case ERROR_MISSING_INSTALL_DIR_PARAM: | 				sMessage = "Required value is missing "; | ||||||
| 				sMessage = "Install dir parameter is missing"; | 				break; | ||||||
| 				break; | 			case ERROR_EXEC_INTERRUPTED: | ||||||
| 			case ERROR_REQUIRED_VALUE_MISSING: | 				sMessage = "Execution iinterrupted: "; | ||||||
| 				sMessage = "Required value is missing "; | 				break; | ||||||
| 				break; | 			case ERROR_IO_EXCEPTION: | ||||||
| 			case ERROR_EXEC_INTERRUPTED: | 				sMessage = "IOException "; | ||||||
| 				sMessage = "Execution iinterrupted: "; | 				break; | ||||||
| 				break; | 			default: | ||||||
| 			default: | 				sMessage = "Unknown error"; | ||||||
| 				sMessage = "Unknown error"; | 				break; | ||||||
| 				break; | 		} | ||||||
| 		} | 
 | ||||||
| 
 | 		if (null != s) | ||||||
| 		if (null != s) | 		{ | ||||||
| 		{ | 			sMessage = sMessage + s; | ||||||
| 			sMessage = sMessage + s; | 		} | ||||||
| 		} | 		log(sMessage); | ||||||
| 		log(sMessage); | 	} | ||||||
| 	} | 
 | ||||||
| 
 | 	void log(String s) | ||||||
| 	void log(String s) | 	{ | ||||||
| 	{ | 		try | ||||||
| 		try | 		{ | ||||||
| 		{ | 			fw.write(this.getClass().getName() + ": " + s + "\r\n"); | ||||||
| 			fw.write(this.getClass().getName() + ": " + s + "\r\n"); | 		} | ||||||
| 		} | 		catch (IOException ioe) | ||||||
| 		catch (IOException ioe) | 		{ | ||||||
| 		{ | 		} | ||||||
| 		} | 	} | ||||||
| 	} | 
 | ||||||
| 
 | } | ||||||
| } |  | ||||||
| @@ -1,47 +0,0 @@ | |||||||
| <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |  | ||||||
|     <Platform Condition=" '$(Platform)' == '' ">x86</Platform> |  | ||||||
|     <ProductVersion>8.0.50727</ProductVersion> |  | ||||||
|     <SchemaVersion>2.0</SchemaVersion> |  | ||||||
|     <ProjectGuid>{89D5D921-A2E6-4ED9-A724-8C7DAAC09AC5}</ProjectGuid> |  | ||||||
|     <OutputType>Exe</OutputType> |  | ||||||
|     <RootNamespace>ClientKeystoreSetup</RootNamespace> |  | ||||||
|     <AssemblyName>ClientKeystoreSetup</AssemblyName> |  | ||||||
|     <WarningLevel>4</WarningLevel> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> |  | ||||||
|     <DebugSymbols>true</DebugSymbols> |  | ||||||
|     <DebugType>full</DebugType> |  | ||||||
|     <Optimize>false</Optimize> |  | ||||||
|     <OutputPath>bin\Debug\</OutputPath> |  | ||||||
|     <DefineConstants>DEBUG;TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> |  | ||||||
|     <DebugType>pdbonly</DebugType> |  | ||||||
|     <Optimize>true</Optimize> |  | ||||||
|     <OutputPath>bin\Release\</OutputPath> |  | ||||||
|     <DefineConstants>TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Reference Include="System" /> |  | ||||||
|     <Reference Include="System.Data" /> |  | ||||||
|     <Reference Include="System.Xml" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Compile Include="Program.jsl" /> |  | ||||||
|     <Compile Include="Properties\AssemblyInfo.jsl" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <Import Project="$(MSBuildBinPath)\Microsoft.VisualJSharp.targets" /> |  | ||||||
|   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.  |  | ||||||
|        Other similar extension points exist, see Microsoft.Common.targets. |  | ||||||
|   <Target Name="BeforeBuild"> |  | ||||||
|   </Target> |  | ||||||
|   <Target Name="AfterBuild"> |  | ||||||
|   </Target> |  | ||||||
|   --> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <PostBuildEvent> |  | ||||||
|     </PostBuildEvent> |  | ||||||
|   </PropertyGroup> |  | ||||||
| </Project> |  | ||||||
| @@ -1,69 +1,77 @@ | |||||||
| ####################################################################### | ####################################################################### | ||||||
| # | # | ||||||
| #  Copyright (C) 2004 Novell, Inc. | #  Copyright (C) 2004 Novell, Inc. | ||||||
| # | # | ||||||
| #  This program is free software; you can redistribute it and/or | #  This program is free software; you can redistribute it and/or | ||||||
| #  modify it under the terms of the GNU General Public | #  modify it under the terms of the GNU General Public | ||||||
| #  License as published by the Free Software Foundation; either | #  License as published by the Free Software Foundation; either | ||||||
| #  version 2 of the License, or (at your option) any later version. | #  version 2 of the License, or (at your option) any later version. | ||||||
| # | # | ||||||
| #  This program is distributed in the hope that it will be useful, | #  This program is distributed in the hope that it will be useful, | ||||||
| #  but WITHOUT ANY WARRANTY; without even the implied warranty of | #  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
| #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
| #  General Public License for more details. | #  General Public License for more details. | ||||||
| # | # | ||||||
| #  You should have received a copy of the GNU General Public | #  You should have received a copy of the GNU General Public | ||||||
| #  License along with this program; if not, write to the Free | #  License along with this program; if not, write to the Free | ||||||
| #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||||
| # | # | ||||||
| #  Author: Greg Richardson <grichardson@novell.com> | #  Author: Greg Richardson <grichardson@novell.com> | ||||||
| # | # | ||||||
| ####################################################################### | ####################################################################### | ||||||
|  |  | ||||||
| SUBDIRS = | SUBDIRS = | ||||||
|  |  | ||||||
| DIST_SUBDIRS = | DIST_SUBDIRS = | ||||||
|  |  | ||||||
| EXTRA_DIST = ClientKeystoreSetup.vjsproj Program.jsl | EXTRA_DIST = ClientKeystoreSetup.java | ||||||
|  |  | ||||||
| if DEBUG | if DEBUG | ||||||
| TARGET_CFG = Debug | TARGET_CFG = Debug | ||||||
| else | DEBUG = -g | ||||||
| TARGET_CFG = Release | else | ||||||
| endif | TARGET_CFG = Release | ||||||
|  | DEBUG = -g:none | ||||||
| PACKAGE = ClientKeystoreSetup | endif | ||||||
| TARGET_FILE = $(PACKAGE).exe |  | ||||||
| LOG_FILE = $(PACKAGE).log | PACKAGE = ClientKeystoreSetup | ||||||
|  | TARGET_FILE = $(PACKAGE).class | ||||||
| .PHONY: package package-clean package-install package-uninstall devenv | LOG_FILE = $(PACKAGE).log | ||||||
|  | JAVAFILES = ClientKeystoreSetup.java  | ||||||
| package: $(TARGET_FILE) | CLASSES = $(addprefix $(BUILDDIR)/, $(JAVAFILES:%.java=%.class)) | ||||||
|  | BUILDDIR = bin/$(TARGET_CFG) | ||||||
| devenv: |  | ||||||
| 	@if ! test -x "$(VSINSTALLDIR)/Common7/IDE/devenv.exe"; then echo "Error: Microsoft Visual Studio .NET is currently required to build MSI and MSM packages"; exit 1; fi | .PHONY: package package-clean package-install package-uninstall | ||||||
|  |  | ||||||
| $(TARGET_FILE): devenv | all: $(BUILDDIR) $(CLASSES) | ||||||
| 	@rm -f $(LOG_FILE) $@ |  | ||||||
| 	@CMD='"$(VSINSTALLDIR)/Common7/IDE/devenv.exe" ../server-java_msi/server-java_msi.sln /build $(TARGET_CFG) /project $(PACKAGE) /out $(LOG_FILE)'; \ | $(BUILDDIR)/%.class: %.java | ||||||
| 	echo $$CMD; \ | 	@rm -f $(LOG_FILE) $@ | ||||||
| 	if eval $$CMD; then \ | 	@echo [======== Compiling $@ ========] | ||||||
| 		ls -l bin/$(TARGET_CFG)/$(TARGET_FILE); \ | 	@javac $(DEBUG) -d $(BUILDDIR) $< 2> $(LOG_FILE) | ||||||
| 	else \ | 	@echo $$CMD; \ | ||||||
| 		grep -a "ERROR:" $(LOG_FILE); \ | 	if eval $$CMD; then \ | ||||||
| 	fi | 		ls -l $(BUILDDIR)/$(TARGET_FILE); \ | ||||||
| 	 | 		cp $(BUILDDIR)/$(TARGET_FILE) bin; \ | ||||||
| package-clean clean-local: | 	else \ | ||||||
| 	rm -rf  Release/* Release Debug/* Debug*/Release */Debug *.log *.suo | 		grep -a "ERROR:" $(LOG_FILE); \ | ||||||
|  | 	fi | ||||||
| clean: |  | ||||||
| 	rm -rf  Release/* Release Debug/* Debug */Release */Debug *.log *.suo | $(BUILDDIR): | ||||||
|  | 	[ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR) | ||||||
| distclean-local: package-clean |  | ||||||
| 	rm -f Makefile | 	 | ||||||
|  | package-clean clean-local: | ||||||
| maintainer-clean-local: | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
| 	rm -f Makefile.in |  | ||||||
|  | clean: | ||||||
|  | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
|  |  | ||||||
|  | distclean-local: package-clean | ||||||
|  | 	rm -f Makefile | ||||||
|  |  | ||||||
|  | maintainer-clean-local: | ||||||
|  | 	rm -f Makefile.in | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,36 +0,0 @@ | |||||||
| import System.Reflection.*; |  | ||||||
| import System.Runtime.CompilerServices.*; |  | ||||||
| import System.Runtime.InteropServices.*; |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // General Information about an assembly is controlled through the following  |  | ||||||
| // set of attributes. Change these attribute values to modify the information |  | ||||||
| // associated with an assembly. |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyTitle("ClientKeystoreSetup") */ |  | ||||||
| /** @assembly AssemblyDescription("") */ |  | ||||||
| /** @assembly AssemblyCompany("Novell") */ |  | ||||||
| /** @assembly AssemblyProduct("ClientKeystoreSetup") */ |  | ||||||
| /** @assembly AssemblyCopyright("Copyright © Novell 2006") */ |  | ||||||
| /** @assembly AssemblyTrademark("") */ |  | ||||||
| /** @assembly AssemblyCulture("") */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // The ComVisible attribute controls accessibility of an individual type |  | ||||||
| // or member, or of all types within this assembly, from COM.  To access |  | ||||||
| // a type or member in this assembly from COM, set the ComVisible attribute |  | ||||||
| // on that type or member to true. |  | ||||||
| /** @assembly ComVisible(false) */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // Version information for an assembly consists of the following four values: |  | ||||||
| // |  | ||||||
| //      Major Version |  | ||||||
| //      Minor Version  |  | ||||||
| //      Build Number |  | ||||||
| //      Revision |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyVersion("1.0.0.0") */ |  | ||||||
| @@ -0,0 +1,136 @@ | |||||||
|  | #include <stdio.h> | ||||||
|  | #include <stdlib.h> | ||||||
|  | #include <conio.h> | ||||||
|  | #include <process.h> | ||||||
|  | #include <errno.h> | ||||||
|  |  | ||||||
|  | #define ERROR_NO_ERROR						0 | ||||||
|  | #define ERROR_MEMORY_ALLOCATION_FAILED		-1 | ||||||
|  | #define ERROR_INVALID_NUMBER_OF_PARAMETERS	-2 | ||||||
|  | #define ERROR_EXEC_E2BIG					-3 | ||||||
|  | #define ERROR_EXEC_EACCES					-4  | ||||||
|  | #define ERROR_EXEC_EINVAL					-5 | ||||||
|  | #define ERROR_EXEC_EMFILE					-6 | ||||||
|  | #define ERROR_EXEC_ENOENT					-7 | ||||||
|  | #define ERROR_EXEC_ENOEXEC					-8 | ||||||
|  | #define ERROR_EXEC_ENOMEM					-9 | ||||||
|  | #define ERROR_EXEC_UNKNOWN					-10 | ||||||
|  |  | ||||||
|  |  | ||||||
|  | char * errorMessage(int err) | ||||||
|  | { | ||||||
|  | 	switch (err) | ||||||
|  | 	{ | ||||||
|  | 	case ERROR_NO_ERROR: | ||||||
|  | 		return "No error\n"; | ||||||
|  | 	case ERROR_MEMORY_ALLOCATION_FAILED: | ||||||
|  | 		return "Memory allocation failed\n"; | ||||||
|  | 	case ERROR_INVALID_NUMBER_OF_PARAMETERS: | ||||||
|  | 		return "Invalid number of parameters\n"; | ||||||
|  | 	case ERROR_EXEC_E2BIG: | ||||||
|  | 		return "_exec: The space required for the arguments and environment settings exceeds 32 KB.\n"; | ||||||
|  | 	case ERROR_EXEC_EACCES: | ||||||
|  | 		return "_exec: The specified file has a locking or sharing violation.\n"; | ||||||
|  | 	case ERROR_EXEC_EINVAL: | ||||||
|  | 		return "_exec: Invalid parameter.\n"; | ||||||
|  | 	case ERROR_EXEC_EMFILE:	 | ||||||
|  | 		return "_exec: Too many files open (the specified file must be opened to determine whether it is executable).\n"; | ||||||
|  | 	case ERROR_EXEC_ENOENT:	 | ||||||
|  | 		return "_exec: The file or path not found.\n"; | ||||||
|  | 	case ERROR_EXEC_ENOEXEC:	 | ||||||
|  | 		return "_exec: The specified file is not executable or has an invalid executable-file format.\n"; | ||||||
|  | 	case ERROR_EXEC_ENOMEM:	 | ||||||
|  | 		return "_exec: Not enough memory is available to execute the new process; the available memory has been corrupted; or an invalid block exists, indicating that the calling process was not allocated properly.\n"; | ||||||
|  | 	case ERROR_EXEC_UNKNOWN: | ||||||
|  | 		return "Unknown _exec error.\n"; | ||||||
|  | 	default: | ||||||
|  | 		return "Unknown error.\n"; | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  |  | ||||||
|  | int main( int cArg, char* rgArg[] ) | ||||||
|  | { | ||||||
|  | 	int cArgCommand = cArg;		// Take one off for the name of this exe, then add  | ||||||
|  | 								// one for the null at the end of the arg list. | ||||||
|  | 	int i;						// Looping variable | ||||||
|  | 	int rc = ERROR_NO_ERROR;	// Return code | ||||||
|  | 	char **rgArgCommand;		// An array for the command args | ||||||
|  |  | ||||||
|  | 	// Make sure we got enough parameters to execute. | ||||||
|  | 	if( cArg < 4) | ||||||
|  | 	{ | ||||||
|  | 		fprintf(stderr, errorMessage(ERROR_MEMORY_ALLOCATION_FAILED)); | ||||||
|  | 		fprintf( stderr, "Usage: %s <full path path to java.exe> <-cp classpath> <class> [arg1 [arg2 [...]]]\n", rgArg[0] ); | ||||||
|  | 		return ERROR_INVALID_NUMBER_OF_PARAMETERS; | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	// Allocate room to the arglist for the cal to exec | ||||||
|  | 	rgArgCommand = (char **)malloc(sizeof(char *)*cArgCommand);  | ||||||
|  |  | ||||||
|  | 	// Did the memory allocation succeed? | ||||||
|  | 	if (NULL == rgArgCommand) | ||||||
|  | 	{ | ||||||
|  | 		fprintf(stderr, errorMessage(ERROR_MEMORY_ALLOCATION_FAILED)); | ||||||
|  | 		return ERROR_MEMORY_ALLOCATION_FAILED; | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	fprintf( stderr, "Arg count = %d\n", cArg); | ||||||
|  | 	fprintf( stderr, "Command arg count = %d\n", cArgCommand); | ||||||
|  |  | ||||||
|  | 	// copy over the arguments for the command | ||||||
|  | 	for (i = 1; i < cArg; i++) | ||||||
|  | 	{ | ||||||
|  | 		fprintf(stderr, "rgArgCommand[%d] = rgArg[%d] (%s)\n", (i - 1), i, rgArg[i]); | ||||||
|  | 		rgArgCommand[i - 1] = rgArg[i]; | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	// null out the command arg array | ||||||
|  | 	fprintf( stderr, "null out rgArgCommand[%d]\n",i); | ||||||
|  | 	rgArgCommand[cArgCommand - 1] = (char *)0; | ||||||
|  |  | ||||||
|  | 	// exec the command | ||||||
|  | 	if (-1 == _execv( rgArg[1], rgArgCommand)) | ||||||
|  | 	{ | ||||||
|  | 		switch (errno) | ||||||
|  | 		{ | ||||||
|  | 		case E2BIG:		// The space required for the arguments and environment settings exceeds 32 KB. | ||||||
|  | 			rc = ERROR_EXEC_E2BIG; | ||||||
|  | 			break; | ||||||
|  | 	 | ||||||
|  | 		case EACCES:	// The specified file has a locking or sharing violation. | ||||||
|  | 			rc = ERROR_EXEC_EACCES; | ||||||
|  | 			break; | ||||||
|  |   | ||||||
|  | 		case EINVAL:	// Invalid parameter. | ||||||
|  | 			rc = ERROR_EXEC_EINVAL; | ||||||
|  | 			break; | ||||||
|  |   | ||||||
|  | 		case EMFILE:	// Too many files open (the specified file must be opened to determine whether it is executable). | ||||||
|  | 			rc = ERROR_EXEC_EMFILE; | ||||||
|  | 			break; | ||||||
|  |   | ||||||
|  | 		case ENOENT:	// The file or path not found. | ||||||
|  | 			rc = ERROR_EXEC_ENOENT; | ||||||
|  | 			break; | ||||||
|  |   | ||||||
|  | 		case ENOEXEC:	// The specified file is not executable or has an invalid executable-file format. | ||||||
|  | 			rc = ERROR_EXEC_ENOEXEC; | ||||||
|  | 			break; | ||||||
|  |   | ||||||
|  | 		case ENOMEM:	// Not enough memory is available to execute the new process; the available memory has been  | ||||||
|  | 						// corrupted; or an invalid block exists, indicating that the calling process was not allocated  | ||||||
|  | 						// properly. | ||||||
|  | 			rc = ERROR_EXEC_ENOMEM; | ||||||
|  | 			break; | ||||||
|  |   | ||||||
|  | 		default: | ||||||
|  | 			rc = ERROR_EXEC_UNKNOWN; | ||||||
|  | 			break; | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	free(rgArgCommand); | ||||||
|  |  | ||||||
|  | 	return rc; | ||||||
|  | } | ||||||
|  |  | ||||||
| @@ -0,0 +1,167 @@ | |||||||
|  | <?xml version="1.0" encoding="Windows-1252"?> | ||||||
|  | <VisualStudioProject | ||||||
|  | 	ProjectType="Visual C++" | ||||||
|  | 	Version="8.00" | ||||||
|  | 	Name="CommandLauncher" | ||||||
|  | 	ProjectGUID="{B52EF84A-D745-4637-9F59-DBD6E21C179C}" | ||||||
|  | 	> | ||||||
|  | 	<Platforms> | ||||||
|  | 		<Platform | ||||||
|  | 			Name="Win32" | ||||||
|  | 		/> | ||||||
|  | 	</Platforms> | ||||||
|  | 	<ToolFiles> | ||||||
|  | 	</ToolFiles> | ||||||
|  | 	<Configurations> | ||||||
|  | 		<Configuration | ||||||
|  | 			Name="Debug|Win32" | ||||||
|  | 			OutputDirectory="./bin" | ||||||
|  | 			IntermediateDirectory="$(ConfigurationName)" | ||||||
|  | 			ConfigurationType="1" | ||||||
|  | 			> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCPreBuildEventTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCCustomBuildTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCXMLDataGeneratorTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCWebServiceProxyGeneratorTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCMIDLTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCCLCompilerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCManagedResourceCompilerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCResourceCompilerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCPreLinkEventTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCLinkerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCALinkTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCManifestTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCXDCMakeTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCBscMakeTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCFxCopTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCAppVerifierTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCWebDeploymentTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCPostBuildEventTool" | ||||||
|  | 			/> | ||||||
|  | 		</Configuration> | ||||||
|  | 		<Configuration | ||||||
|  | 			Name="Release|Win32" | ||||||
|  | 			OutputDirectory="./bin" | ||||||
|  | 			IntermediateDirectory="$(ConfigurationName)" | ||||||
|  | 			ConfigurationType="1" | ||||||
|  | 			> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCPreBuildEventTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCCustomBuildTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCXMLDataGeneratorTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCWebServiceProxyGeneratorTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCMIDLTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCCLCompilerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCManagedResourceCompilerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCResourceCompilerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCPreLinkEventTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCLinkerTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCALinkTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCManifestTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCXDCMakeTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCBscMakeTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCFxCopTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCAppVerifierTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCWebDeploymentTool" | ||||||
|  | 			/> | ||||||
|  | 			<Tool | ||||||
|  | 				Name="VCPostBuildEventTool" | ||||||
|  | 			/> | ||||||
|  | 		</Configuration> | ||||||
|  | 	</Configurations> | ||||||
|  | 	<References> | ||||||
|  | 	</References> | ||||||
|  | 	<Files> | ||||||
|  | 		<Filter | ||||||
|  | 			Name="Source Files" | ||||||
|  | 			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" | ||||||
|  | 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" | ||||||
|  | 			> | ||||||
|  | 			<File | ||||||
|  | 				RelativePath=".\CommandLauncher.c" | ||||||
|  | 				> | ||||||
|  | 			</File> | ||||||
|  | 		</Filter> | ||||||
|  | 		<Filter | ||||||
|  | 			Name="Header Files" | ||||||
|  | 			Filter="h;hpp;hxx;hm;inl;inc;xsd" | ||||||
|  | 			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" | ||||||
|  | 			> | ||||||
|  | 		</Filter> | ||||||
|  | 		<Filter | ||||||
|  | 			Name="Resource Files" | ||||||
|  | 			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" | ||||||
|  | 			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" | ||||||
|  | 			> | ||||||
|  | 		</Filter> | ||||||
|  | 	</Files> | ||||||
|  | 	<Globals> | ||||||
|  | 	</Globals> | ||||||
|  | </VisualStudioProject> | ||||||
| @@ -0,0 +1,69 @@ | |||||||
|  | ####################################################################### | ||||||
|  | # | ||||||
|  | #  Copyright (C) 2004 Novell, Inc. | ||||||
|  | # | ||||||
|  | #  This program is free software; you can redistribute it and/or | ||||||
|  | #  modify it under the terms of the GNU General Public | ||||||
|  | #  License as published by the Free Software Foundation; either | ||||||
|  | #  version 2 of the License, or (at your option) any later version. | ||||||
|  | # | ||||||
|  | #  This program is distributed in the hope that it will be useful, | ||||||
|  | #  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
|  | #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
|  | #  General Public License for more details. | ||||||
|  | # | ||||||
|  | #  You should have received a copy of the GNU General Public | ||||||
|  | #  License along with this program; if not, write to the Free | ||||||
|  | #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||||
|  | # | ||||||
|  | #  Author: Greg Richardson <grichardson@novell.com> | ||||||
|  | # | ||||||
|  | ####################################################################### | ||||||
|  |  | ||||||
|  | SUBDIRS = | ||||||
|  |  | ||||||
|  | DIST_SUBDIRS = | ||||||
|  |  | ||||||
|  | EXTRA_DIST = CommandLauncher.vcproj CommandLauncher.c | ||||||
|  |  | ||||||
|  | if DEBUG | ||||||
|  | TARGET_CFG = Debug | ||||||
|  | else | ||||||
|  | TARGET_CFG = Release | ||||||
|  | endif | ||||||
|  |  | ||||||
|  | PACKAGE = CommandLauncher | ||||||
|  | TARGET_FILE = $(PACKAGE).exe | ||||||
|  | LOG_FILE = $(PACKAGE).log | ||||||
|  |  | ||||||
|  | .PHONY: package package-clean package-install package-uninstall devenv | ||||||
|  |  | ||||||
|  | package: $(TARGET_FILE) | ||||||
|  |  | ||||||
|  | devenv: | ||||||
|  | 	@if ! test -x "$(VSINSTALLDIR)/Common7/IDE/devenv.exe"; then echo "Error: Microsoft Visual Studio .NET is currently required to build MSI and MSM packages"; exit 1; fi | ||||||
|  |  | ||||||
|  | $(TARGET_FILE): devenv | ||||||
|  | 	@rm -f $(LOG_FILE) $@ | ||||||
|  | 	@CMD='"$(VSINSTALLDIR)/Common7/IDE/devenv.exe" ../server-java_msi/server-java_msi.sln /build $(TARGET_CFG) /project $(PACKAGE) /out $(LOG_FILE)'; \ | ||||||
|  | 	echo $$CMD; \ | ||||||
|  | 	if eval $$CMD; then \ | ||||||
|  | 		ls -l bin/$(TARGET_FILE); \ | ||||||
|  | 	else \ | ||||||
|  | 		grep -a "ERROR:" $(LOG_FILE); \ | ||||||
|  | 	fi | ||||||
|  | 	 | ||||||
|  | package-clean clean-local: | ||||||
|  | 	rm -rf  Release/* Release Debug/* Debug*/Release */Debug *.log *.suo | ||||||
|  |  | ||||||
|  | clean: | ||||||
|  | 	rm -rf  Release/* Release Debug/* Debug */Release */Debug *.log *.suo | ||||||
|  |  | ||||||
|  | distclean-local: package-clean | ||||||
|  | 	rm -f Makefile | ||||||
|  |  | ||||||
|  | maintainer-clean-local: | ||||||
|  | 	rm -f Makefile.in | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -22,15 +22,13 @@ | |||||||
|  *   |  *   | ||||||
|  ***********************************************************************/ |  ***********************************************************************/ | ||||||
| 
 | 
 | ||||||
| package InitConfigFile; |  | ||||||
| 
 |  | ||||||
| import java.io.*; | import java.io.*; | ||||||
| import java.util.*; | import java.util.*; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Summary description for Program |  * Summary description for Program | ||||||
|  */ |  */ | ||||||
| public class Program | public class InitConfigFile | ||||||
| { | { | ||||||
| 	final static int ERROR_NO_ERROR						= 0; | 	final static int ERROR_NO_ERROR						= 0; | ||||||
| 	final static int ERROR_INVALID_NUMBER_OF_PARAMS		= -1; | 	final static int ERROR_INVALID_NUMBER_OF_PARAMS		= -1; | ||||||
| @@ -76,10 +74,10 @@ public class Program | |||||||
| 
 | 
 | ||||||
| 	public static void main(String[] args) | 	public static void main(String[] args) | ||||||
| 	{ | 	{ | ||||||
| 		Program p = new Program(args); | 		InitConfigFile p = new InitConfigFile(args); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	Program(String[] args) | 	InitConfigFile(String[] args) | ||||||
| 	{ | 	{ | ||||||
| 		int rc = ERROR_NO_ERROR; | 		int rc = ERROR_NO_ERROR; | ||||||
| 
 | 
 | ||||||
| @@ -119,7 +117,7 @@ public class Program | |||||||
| 		{ | 		{ | ||||||
| 			try | 			try | ||||||
| 			{ | 			{ | ||||||
| 				log("return code = " + rc); | 				log(rc); | ||||||
| 				fw.flush(); | 				fw.flush(); | ||||||
| 				fw.close(); | 				fw.close(); | ||||||
| 			} | 			} | ||||||
| @@ -399,9 +397,6 @@ public class Program | |||||||
| 			case ERROR_MISSING_TEMPLATE: | 			case ERROR_MISSING_TEMPLATE: | ||||||
| 				sMessage = "Template file not found"; | 				sMessage = "Template file not found"; | ||||||
| 				break; | 				break; | ||||||
| //			case ERROR_TEMPLATE_PROPERTY_MISSING: |  | ||||||
| //				sMessage = "Template file parameter missing"; |  | ||||||
| //				break; |  | ||||||
| 			case ERROR_OUTPUT_PROPERTY_MISSING: | 			case ERROR_OUTPUT_PROPERTY_MISSING: | ||||||
| 				sMessage = "Output file parameter missing"; | 				sMessage = "Output file parameter missing"; | ||||||
| 				break; | 				break; | ||||||
| @@ -414,6 +409,48 @@ public class Program | |||||||
| 			case ERROR_MISSING_PROPERTIES: | 			case ERROR_MISSING_PROPERTIES: | ||||||
| 				sMessage = "Properties file not found"; | 				sMessage = "Properties file not found"; | ||||||
| 				break; | 				break; | ||||||
|  | 			case ERROR_MISSING_TEMPLATE_FILE: | ||||||
|  | 				sMessage = "Missing template file"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_PROPERTIES_FILE_IS_EMPTY: | ||||||
|  | 				sMessage = "Properties file is empty"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_MISSING_INSTALL_DIR: | ||||||
|  | 				sMessage = "Missing install dir"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_INSTALL_DIR_NOT_A_DIR: | ||||||
|  | 				sMessage = "Install directory is not a directory"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_BAD_INSTALL_DIR_PARAM: | ||||||
|  | 				sMessage = "Bad install directory parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_BAD_PROPERTY_FILE_PARAM: | ||||||
|  | 				sMessage = "Bad property file parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_MISSING_PROPERTIES_FILE: | ||||||
|  | 				sMessage = "Missing properties file"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_MISSING_INSTALL_DIR_PARAM: | ||||||
|  | 				sMessage = "Missing install directory parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_MISSING_PROPERTY_FILE_PARAM: | ||||||
|  | 				sMessage = "Missing property file parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_BAD_TEMPLATE_FILE_PARAM: | ||||||
|  | 				sMessage = "Bad template file parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_BAD_OUTPUT_FILE_PARAM: | ||||||
|  | 				sMessage = "Bad output file parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_MISSING_TEMPLATE_FILE_PARAM: | ||||||
|  | 				sMessage = "Missing template file parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_MISSING_OUTPUT_FILE_PARAM: | ||||||
|  | 				sMessage = "Missing output file parameter"; | ||||||
|  | 				break; | ||||||
|  | 			case ERROR_BAD_PROPERTY_PARAM: | ||||||
|  | 				sMessage = "Bad property parameter"; | ||||||
|  | 				break; | ||||||
| 			case ERROR_UNABLE_TO_READ_PROPERTIES: | 			case ERROR_UNABLE_TO_READ_PROPERTIES: | ||||||
| 				sMessage = "Unable to read properties file"; | 				sMessage = "Unable to read properties file"; | ||||||
| 				break; | 				break; | ||||||
| @@ -1,47 +0,0 @@ | |||||||
| <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |  | ||||||
|     <Platform Condition=" '$(Platform)' == '' ">x86</Platform> |  | ||||||
|     <ProductVersion>8.0.50727</ProductVersion> |  | ||||||
|     <SchemaVersion>2.0</SchemaVersion> |  | ||||||
|     <ProjectGuid>{E3528B18-D4A0-4604-B2C5-8EE36E094A40}</ProjectGuid> |  | ||||||
|     <OutputType>Exe</OutputType> |  | ||||||
|     <RootNamespace>InitConfigFile</RootNamespace> |  | ||||||
|     <AssemblyName>InitConfigFile</AssemblyName> |  | ||||||
|     <WarningLevel>4</WarningLevel> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> |  | ||||||
|     <DebugSymbols>true</DebugSymbols> |  | ||||||
|     <DebugType>full</DebugType> |  | ||||||
|     <Optimize>false</Optimize> |  | ||||||
|     <OutputPath>bin\Debug\</OutputPath> |  | ||||||
|     <DefineConstants>DEBUG;TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> |  | ||||||
|     <DebugType>pdbonly</DebugType> |  | ||||||
|     <Optimize>true</Optimize> |  | ||||||
|     <OutputPath>bin\Release\</OutputPath> |  | ||||||
|     <DefineConstants>TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Reference Include="System" /> |  | ||||||
|     <Reference Include="System.Data" /> |  | ||||||
|     <Reference Include="System.Xml" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Compile Include="Program.jsl" /> |  | ||||||
|     <Compile Include="Properties\AssemblyInfo.jsl" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <Import Project="$(MSBuildBinPath)\Microsoft.VisualJSharp.targets" /> |  | ||||||
|   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.  |  | ||||||
|        Other similar extension points exist, see Microsoft.Common.targets. |  | ||||||
|   <Target Name="BeforeBuild"> |  | ||||||
|   </Target> |  | ||||||
|   <Target Name="AfterBuild"> |  | ||||||
|   </Target> |  | ||||||
|   --> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <PostBuildEvent> |  | ||||||
|     </PostBuildEvent> |  | ||||||
|   </PropertyGroup> |  | ||||||
| </Project> |  | ||||||
| @@ -1,69 +1,77 @@ | |||||||
| ####################################################################### | ####################################################################### | ||||||
| # | # | ||||||
| #  Copyright (C) 2004 Novell, Inc. | #  Copyright (C) 2004 Novell, Inc. | ||||||
| # | # | ||||||
| #  This program is free software; you can redistribute it and/or | #  This program is free software; you can redistribute it and/or | ||||||
| #  modify it under the terms of the GNU General Public | #  modify it under the terms of the GNU General Public | ||||||
| #  License as published by the Free Software Foundation; either | #  License as published by the Free Software Foundation; either | ||||||
| #  version 2 of the License, or (at your option) any later version. | #  version 2 of the License, or (at your option) any later version. | ||||||
| # | # | ||||||
| #  This program is distributed in the hope that it will be useful, | #  This program is distributed in the hope that it will be useful, | ||||||
| #  but WITHOUT ANY WARRANTY; without even the implied warranty of | #  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
| #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
| #  General Public License for more details. | #  General Public License for more details. | ||||||
| # | # | ||||||
| #  You should have received a copy of the GNU General Public | #  You should have received a copy of the GNU General Public | ||||||
| #  License along with this program; if not, write to the Free | #  License along with this program; if not, write to the Free | ||||||
| #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||||
| # | # | ||||||
| #  Author: Greg Richardson <grichardson@novell.com> | #  Author: Greg Richardson <grichardson@novell.com> | ||||||
| # | # | ||||||
| ####################################################################### | ####################################################################### | ||||||
|  |  | ||||||
| SUBDIRS = | SUBDIRS = | ||||||
|  |  | ||||||
| DIST_SUBDIRS = | DIST_SUBDIRS = | ||||||
|  |  | ||||||
| EXTRA_DIST = InitConfigFile.vjsproj Program.jsl | EXTRA_DIST = InitConfigFile.java | ||||||
|  |  | ||||||
| if DEBUG | if DEBUG | ||||||
| TARGET_CFG = Debug | TARGET_CFG = Debug | ||||||
| else | DEBUG = -g | ||||||
| TARGET_CFG = Release | else | ||||||
| endif | TARGET_CFG = Release | ||||||
|  | DEBUG = -g:none | ||||||
| PACKAGE = InitConfigFile | endif | ||||||
| TARGET_FILE = $(PACKAGE).exe |  | ||||||
| LOG_FILE = $(PACKAGE).log | PACKAGE = InitConfigFile | ||||||
|  | TARGET_FILE = $(PACKAGE).class | ||||||
| .PHONY: package package-clean package-install package-uninstall devenv | LOG_FILE = $(PACKAGE).log | ||||||
|  | JAVAFILES = InitConfigFile.java  | ||||||
| package: $(TARGET_FILE) | CLASSES = $(addprefix $(BUILDDIR)/, $(JAVAFILES:%.java=%.class)) | ||||||
|  | BUILDDIR = bin/$(TARGET_CFG) | ||||||
| devenv: |  | ||||||
| 	@if ! test -x "$(VSINSTALLDIR)/Common7/IDE/devenv.exe"; then echo "Error: Microsoft Visual Studio .NET is currently required to build MSI and MSM packages"; exit 1; fi | .PHONY: package package-clean package-install package-uninstall | ||||||
|  |  | ||||||
| $(TARGET_FILE): devenv | all: $(BUILDDIR) $(CLASSES) | ||||||
| 	@rm -f $(LOG_FILE) $@ |  | ||||||
| 	@CMD='"$(VSINSTALLDIR)/Common7/IDE/devenv.exe" ../server-java_msi/server-java_msi.sln /build $(TARGET_CFG) /project $(PACKAGE) /out $(LOG_FILE)'; \ | $(BUILDDIR)/%.class: %.java | ||||||
| 	echo $$CMD; \ | 	@rm -f $(LOG_FILE) $@ | ||||||
| 	if eval $$CMD; then \ | 	@echo [======== Compiling $@ ========] | ||||||
| 		ls -l bin/$(TARGET_CFG)/$(TARGET_FILE); \ | 	@javac $(DEBUG) -d $(BUILDDIR) $< 2> $(LOG_FILE) | ||||||
| 	else \ | 	@echo $$CMD; \ | ||||||
| 		grep -a "ERROR:" $(LOG_FILE); \ | 	if eval $$CMD; then \ | ||||||
| 	fi | 		ls -l $(BUILDDIR)/$(TARGET_FILE); \ | ||||||
| 	 | 		cp $(BUILDDIR)/$(TARGET_FILE) bin; \ | ||||||
| package-clean clean-local: | 	else \ | ||||||
| 	rm -rf  Release/* Release Debug/* Debug*/Release */Debug *.log *.suo | 		grep -a "ERROR:" $(LOG_FILE); \ | ||||||
|  | 	fi | ||||||
| clean: |  | ||||||
| 	rm -rf  Release/* Release Debug/* Debug */Release */Debug *.log *.suo | $(BUILDDIR): | ||||||
|  | 	[ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR) | ||||||
| distclean-local: package-clean |  | ||||||
| 	rm -f Makefile | 	 | ||||||
|  | package-clean clean-local: | ||||||
| maintainer-clean-local: | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
| 	rm -f Makefile.in |  | ||||||
|  | clean: | ||||||
|  | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
|  |  | ||||||
|  | distclean-local: package-clean | ||||||
|  | 	rm -f Makefile | ||||||
|  |  | ||||||
|  | maintainer-clean-local: | ||||||
|  | 	rm -f Makefile.in | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,36 +0,0 @@ | |||||||
| import System.Reflection.*; |  | ||||||
| import System.Runtime.CompilerServices.*; |  | ||||||
| import System.Runtime.InteropServices.*; |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // General Information about an assembly is controlled through the following  |  | ||||||
| // set of attributes. Change these attribute values to modify the information |  | ||||||
| // associated with an assembly. |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyTitle("InitConfigFile") */ |  | ||||||
| /** @assembly AssemblyDescription("") */ |  | ||||||
| /** @assembly AssemblyCompany("Novell") */ |  | ||||||
| /** @assembly AssemblyProduct("InitConfigFile") */ |  | ||||||
| /** @assembly AssemblyCopyright("Copyright © Novell 2006") */ |  | ||||||
| /** @assembly AssemblyTrademark("") */ |  | ||||||
| /** @assembly AssemblyCulture("") */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // The ComVisible attribute controls accessibility of an individual type |  | ||||||
| // or member, or of all types within this assembly, from COM.  To access |  | ||||||
| // a type or member in this assembly from COM, set the ComVisible attribute |  | ||||||
| // on that type or member to true. |  | ||||||
| /** @assembly ComVisible(false) */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // Version information for an assembly consists of the following four values: |  | ||||||
| // |  | ||||||
| //      Major Version |  | ||||||
| //      Minor Version  |  | ||||||
| //      Build Number |  | ||||||
| //      Revision |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyVersion("1.0.0.0") */ |  | ||||||
| @@ -20,15 +20,16 @@ | |||||||
| # | # | ||||||
| ####################################################################### | ####################################################################### | ||||||
|  |  | ||||||
| SUBDIRS = ClientKeystoreSetup InitConfigFile MungeCryptoPropertiesFilePath ServerKeystoreSetup SetupAsWindowsService UpdateWarFile server-java_msi | SUBDIRS = ClientKeystoreSetup CommandLauncher InitConfigFile MungeCryptoPropertiesFilePath ServerKeystoreSetup SetupAsWindowsService UpdateWarFile server-java_msi | ||||||
|  |  | ||||||
| DIST_SUBDIRS = ClientKeystoreSetup InitConfigFile MungeCryptoPropertiesFilePath ServerKeystoreSetup SetupAsWindowsService UpdateWarFile server-java_msi | DIST_SUBDIRS = ClientKeystoreSetup CommandLauncher InitConfigFile MungeCryptoPropertiesFilePath ServerKeystoreSetup SetupAsWindowsService UpdateWarFile server-java_msi | ||||||
|  |  | ||||||
| EXTRA_DIST = | EXTRA_DIST = | ||||||
|  |  | ||||||
| .PHONY: package package-clean package-install package-uninstall | .PHONY: package package-clean package-install package-uninstall | ||||||
| package package-clean package-install package-uninstall: | package package-clean package-install package-uninstall: | ||||||
| 	$(MAKE) -C ClientKeystoreSetup  $@ | 	$(MAKE) -C ClientKeystoreSetup  $@ | ||||||
|  | 	$(MAKE) -C CommandLauncher  $@ | ||||||
| 	$(MAKE) -C InitConfigFile  $@ | 	$(MAKE) -C InitConfigFile  $@ | ||||||
| 	$(MAKE) -C MungeCryptoPropertiesFilePath $@ | 	$(MAKE) -C MungeCryptoPropertiesFilePath $@ | ||||||
| 	$(MAKE) -C ServerKeystoreSetup $@ | 	$(MAKE) -C ServerKeystoreSetup $@ | ||||||
|   | |||||||
| @@ -1,69 +1,77 @@ | |||||||
| ####################################################################### | ####################################################################### | ||||||
| # | # | ||||||
| #  Copyright (C) 2004 Novell, Inc. | #  Copyright (C) 2004 Novell, Inc. | ||||||
| # | # | ||||||
| #  This program is free software; you can redistribute it and/or | #  This program is free software; you can redistribute it and/or | ||||||
| #  modify it under the terms of the GNU General Public | #  modify it under the terms of the GNU General Public | ||||||
| #  License as published by the Free Software Foundation; either | #  License as published by the Free Software Foundation; either | ||||||
| #  version 2 of the License, or (at your option) any later version. | #  version 2 of the License, or (at your option) any later version. | ||||||
| # | # | ||||||
| #  This program is distributed in the hope that it will be useful, | #  This program is distributed in the hope that it will be useful, | ||||||
| #  but WITHOUT ANY WARRANTY; without even the implied warranty of | #  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
| #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
| #  General Public License for more details. | #  General Public License for more details. | ||||||
| # | # | ||||||
| #  You should have received a copy of the GNU General Public | #  You should have received a copy of the GNU General Public | ||||||
| #  License along with this program; if not, write to the Free | #  License along with this program; if not, write to the Free | ||||||
| #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||||
| # | # | ||||||
| #  Author: Greg Richardson <grichardson@novell.com> | #  Author: Greg Richardson <grichardson@novell.com> | ||||||
| # | # | ||||||
| ####################################################################### | ####################################################################### | ||||||
|  |  | ||||||
| SUBDIRS = | SUBDIRS = | ||||||
|  |  | ||||||
| DIST_SUBDIRS = | DIST_SUBDIRS = | ||||||
|  |  | ||||||
| EXTRA_DIST = MungeCryptoPropertiesFilePath.vjsproj Program.jsl | EXTRA_DIST = MungeCryptoPropertiesFilePath.java | ||||||
|  |  | ||||||
| if DEBUG | if DEBUG | ||||||
| TARGET_CFG = Debug | TARGET_CFG = Debug | ||||||
| else | DEBUG = -g | ||||||
| TARGET_CFG = Release | else | ||||||
| endif | TARGET_CFG = Release | ||||||
|  | DEBUG = -g:none | ||||||
| PACKAGE = MungeCryptoPropertiesFilePath | endif | ||||||
| TARGET_FILE = $(PACKAGE).exe |  | ||||||
| LOG_FILE = $(PACKAGE).log | PACKAGE = MungeCryptoPropertiesFilePath | ||||||
|  | TARGET_FILE = $(PACKAGE).class | ||||||
| .PHONY: package package-clean package-install package-uninstall devenv | LOG_FILE = $(PACKAGE).log | ||||||
|  | JAVAFILES = MungeCryptoPropertiesFilePath.java  | ||||||
| package: $(TARGET_FILE) | CLASSES = $(addprefix $(BUILDDIR)/, $(JAVAFILES:%.java=%.class)) | ||||||
|  | BUILDDIR = bin/$(TARGET_CFG) | ||||||
| devenv: |  | ||||||
| 	@if ! test -x "$(VSINSTALLDIR)/Common7/IDE/devenv.exe"; then echo "Error: Microsoft Visual Studio .NET is currently required to build MSI and MSM packages"; exit 1; fi | .PHONY: package package-clean package-install package-uninstall | ||||||
|  |  | ||||||
| $(TARGET_FILE): devenv | all: $(BUILDDIR) $(CLASSES) | ||||||
| 	@rm -f $(LOG_FILE) $@ |  | ||||||
| 	@CMD='"$(VSINSTALLDIR)/Common7/IDE/devenv.exe" ../server-java_msi/server-java_msi.sln /build $(TARGET_CFG) /project $(PACKAGE) /out $(LOG_FILE)'; \ | $(BUILDDIR)/%.class: %.java | ||||||
| 	echo $$CMD; \ | 	@rm -f $(LOG_FILE) $@ | ||||||
| 	if eval $$CMD; then \ | 	@echo [======== Compiling $@ ========] | ||||||
| 		ls -l bin/$(TARGET_CFG)/$(TARGET_FILE); \ | 	@javac $(DEBUG) -d $(BUILDDIR) $< 2> $(LOG_FILE) | ||||||
| 	else \ | 	@echo $$CMD; \ | ||||||
| 		grep -a "ERROR:" $(LOG_FILE); \ | 	if eval $$CMD; then \ | ||||||
| 	fi | 		ls -l $(BUILDDIR)/$(TARGET_FILE); \ | ||||||
| 	 | 		cp $(BUILDDIR)/$(TARGET_FILE) bin; \ | ||||||
| package-clean clean-local: | 	else \ | ||||||
| 	rm -rf  Release/* Release Debug/* Debug*/Release */Debug *.log *.suo | 		grep -a "ERROR:" $(LOG_FILE); \ | ||||||
|  | 	fi | ||||||
| clean: |  | ||||||
| 	rm -rf  Release/* Release Debug/* Debug */Release */Debug *.log *.suo | $(BUILDDIR): | ||||||
|  | 	[ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR) | ||||||
| distclean-local: package-clean |  | ||||||
| 	rm -f Makefile | 	 | ||||||
|  | package-clean clean-local: | ||||||
| maintainer-clean-local: | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
| 	rm -f Makefile.in |  | ||||||
|  | clean: | ||||||
|  | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
|  |  | ||||||
|  | distclean-local: package-clean | ||||||
|  | 	rm -f Makefile | ||||||
|  |  | ||||||
|  | maintainer-clean-local: | ||||||
|  | 	rm -f Makefile.in | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -22,15 +22,13 @@ | |||||||
|  *   |  *   | ||||||
|  ***********************************************************************/ |  ***********************************************************************/ | ||||||
| 
 | 
 | ||||||
| package MungeCryptoPropertiesFilePath; |  | ||||||
| 
 |  | ||||||
| import java.io.*; | import java.io.*; | ||||||
| import java.util.*; | import java.util.*; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Summary description for Program |  * Summary description for Program | ||||||
|  */ |  */ | ||||||
| public class Program | public class MungeCryptoPropertiesFilePath | ||||||
| { | { | ||||||
| 	final static int ERROR_NO_ERROR						= 0; | 	final static int ERROR_NO_ERROR						= 0; | ||||||
| 	final static int ERROR_INVALID_NUMBER_OF_PARAMS		= -1; | 	final static int ERROR_INVALID_NUMBER_OF_PARAMS		= -1; | ||||||
| @@ -57,10 +55,10 @@ public class Program | |||||||
| 
 | 
 | ||||||
| 	public static void main(String[] args) | 	public static void main(String[] args) | ||||||
| 	{ | 	{ | ||||||
| 		Program p = new Program(args); | 		MungeCryptoPropertiesFilePath p = new MungeCryptoPropertiesFilePath(args); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	Program(String[] args) | 	MungeCryptoPropertiesFilePath(String[] args) | ||||||
| 	{ | 	{ | ||||||
| 		int rc = ERROR_NO_ERROR; | 		int rc = ERROR_NO_ERROR; | ||||||
| 
 | 
 | ||||||
| @@ -94,7 +92,7 @@ public class Program | |||||||
| 		{ | 		{ | ||||||
| 			try | 			try | ||||||
| 			{ | 			{ | ||||||
| 				log("return code = " + rc); | 				log(rc); | ||||||
| 				fw.flush(); | 				fw.flush(); | ||||||
| 				fw.close(); | 				fw.close(); | ||||||
| 			} | 			} | ||||||
| @@ -1,43 +0,0 @@ | |||||||
| <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |  | ||||||
|     <Platform Condition=" '$(Platform)' == '' ">x86</Platform> |  | ||||||
|     <ProductVersion>8.0.50727</ProductVersion> |  | ||||||
|     <SchemaVersion>2.0</SchemaVersion> |  | ||||||
|     <ProjectGuid>{75D8742F-4778-4978-9032-ED9649BA402D}</ProjectGuid> |  | ||||||
|     <OutputType>Exe</OutputType> |  | ||||||
|     <RootNamespace>MungeCryptoPropertiesFilePath</RootNamespace> |  | ||||||
|     <AssemblyName>MungeCryptoPropertiesFilePath</AssemblyName> |  | ||||||
|     <WarningLevel>4</WarningLevel> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> |  | ||||||
|     <DebugSymbols>true</DebugSymbols> |  | ||||||
|     <DebugType>full</DebugType> |  | ||||||
|     <Optimize>false</Optimize> |  | ||||||
|     <OutputPath>bin\Debug\</OutputPath> |  | ||||||
|     <DefineConstants>DEBUG;TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> |  | ||||||
|     <DebugType>pdbonly</DebugType> |  | ||||||
|     <Optimize>true</Optimize> |  | ||||||
|     <OutputPath>bin\Release\</OutputPath> |  | ||||||
|     <DefineConstants>TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Reference Include="System" /> |  | ||||||
|     <Reference Include="System.Data" /> |  | ||||||
|     <Reference Include="System.Xml" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Compile Include="Program.jsl" /> |  | ||||||
|     <Compile Include="Properties\AssemblyInfo.jsl" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <Import Project="$(MSBuildBinPath)\Microsoft.VisualJSharp.targets" /> |  | ||||||
|   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.  |  | ||||||
|        Other similar extension points exist, see Microsoft.Common.targets. |  | ||||||
|   <Target Name="BeforeBuild"> |  | ||||||
|   </Target> |  | ||||||
|   <Target Name="AfterBuild"> |  | ||||||
|   </Target> |  | ||||||
|   --> |  | ||||||
| </Project> |  | ||||||
| @@ -1,36 +0,0 @@ | |||||||
| import System.Reflection.*; |  | ||||||
| import System.Runtime.CompilerServices.*; |  | ||||||
| import System.Runtime.InteropServices.*; |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // General Information about an assembly is controlled through the following  |  | ||||||
| // set of attributes. Change these attribute values to modify the information |  | ||||||
| // associated with an assembly. |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyTitle("MungeCryptoPropertiesFilePath") */ |  | ||||||
| /** @assembly AssemblyDescription("") */ |  | ||||||
| /** @assembly AssemblyCompany("Novell") */ |  | ||||||
| /** @assembly AssemblyProduct("MungeCryptoPropertiesFilePath") */ |  | ||||||
| /** @assembly AssemblyCopyright("Copyright © Novell 2007") */ |  | ||||||
| /** @assembly AssemblyTrademark("") */ |  | ||||||
| /** @assembly AssemblyCulture("") */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // The ComVisible attribute controls accessibility of an individual type |  | ||||||
| // or member, or of all types within this assembly, from COM.  To access |  | ||||||
| // a type or member in this assembly from COM, set the ComVisible attribute |  | ||||||
| // on that type or member to true. |  | ||||||
| /** @assembly ComVisible(false) */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // Version information for an assembly consists of the following four values: |  | ||||||
| // |  | ||||||
| //      Major Version |  | ||||||
| //      Minor Version  |  | ||||||
| //      Build Number |  | ||||||
| //      Revision |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyVersion("1.0.0.0") */ |  | ||||||
| @@ -1,69 +1,77 @@ | |||||||
| ####################################################################### | ####################################################################### | ||||||
| # | # | ||||||
| #  Copyright (C) 2004 Novell, Inc. | #  Copyright (C) 2004 Novell, Inc. | ||||||
| # | # | ||||||
| #  This program is free software; you can redistribute it and/or | #  This program is free software; you can redistribute it and/or | ||||||
| #  modify it under the terms of the GNU General Public | #  modify it under the terms of the GNU General Public | ||||||
| #  License as published by the Free Software Foundation; either | #  License as published by the Free Software Foundation; either | ||||||
| #  version 2 of the License, or (at your option) any later version. | #  version 2 of the License, or (at your option) any later version. | ||||||
| # | # | ||||||
| #  This program is distributed in the hope that it will be useful, | #  This program is distributed in the hope that it will be useful, | ||||||
| #  but WITHOUT ANY WARRANTY; without even the implied warranty of | #  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
| #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
| #  General Public License for more details. | #  General Public License for more details. | ||||||
| # | # | ||||||
| #  You should have received a copy of the GNU General Public | #  You should have received a copy of the GNU General Public | ||||||
| #  License along with this program; if not, write to the Free | #  License along with this program; if not, write to the Free | ||||||
| #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||||
| # | # | ||||||
| #  Author: Greg Richardson <grichardson@novell.com> | #  Author: Greg Richardson <grichardson@novell.com> | ||||||
| # | # | ||||||
| ####################################################################### | ####################################################################### | ||||||
|  |  | ||||||
| SUBDIRS = | SUBDIRS = | ||||||
|  |  | ||||||
| DIST_SUBDIRS = | DIST_SUBDIRS = | ||||||
|  |  | ||||||
| EXTRA_DIST = ServerKeystoreSetup.vjsproj Program.jsl | EXTRA_DIST = ServerKeystoreSetup.java | ||||||
|  |  | ||||||
| if DEBUG | if DEBUG | ||||||
| TARGET_CFG = Debug | TARGET_CFG = Debug | ||||||
| else | DEBUG = -g | ||||||
| TARGET_CFG = Release | else | ||||||
| endif | TARGET_CFG = Release | ||||||
|  | DEBUG = -g:none | ||||||
| PACKAGE = ServerKeystoreSetup | endif | ||||||
| TARGET_FILE = $(PACKAGE).exe |  | ||||||
| LOG_FILE = $(PACKAGE).log | PACKAGE = ServerKeystoreSetup | ||||||
|  | TARGET_FILE = $(PACKAGE).class | ||||||
| .PHONY: package package-clean package-install package-uninstall devenv | LOG_FILE = $(PACKAGE).log | ||||||
|  | JAVAFILES = ServerKeystoreSetup.java  | ||||||
| package: $(TARGET_FILE) | CLASSES = $(addprefix $(BUILDDIR)/, $(JAVAFILES:%.java=%.class)) | ||||||
|  | BUILDDIR = bin/$(TARGET_CFG) | ||||||
| devenv: |  | ||||||
| 	@if ! test -x "$(VSINSTALLDIR)/Common7/IDE/devenv.exe"; then echo "Error: Microsoft Visual Studio .NET is currently required to build MSI and MSM packages"; exit 1; fi | .PHONY: package package-clean package-install package-uninstall | ||||||
|  |  | ||||||
| $(TARGET_FILE): devenv | all: $(BUILDDIR) $(CLASSES) | ||||||
| 	@rm -f $(LOG_FILE) $@ |  | ||||||
| 	@CMD='"$(VSINSTALLDIR)/Common7/IDE/devenv.exe" ../server-java_msi/server-java_msi.sln /build $(TARGET_CFG) /project $(PACKAGE) /out $(LOG_FILE)'; \ | $(BUILDDIR)/%.class: %.java | ||||||
| 	echo $$CMD; \ | 	@rm -f $(LOG_FILE) $@ | ||||||
| 	if eval $$CMD; then \ | 	@echo [======== Compiling $@ ========] | ||||||
| 		ls -l bin/$(TARGET_CFG)/$(TARGET_FILE); \ | 	@javac $(DEBUG) -d $(BUILDDIR) $< 2> $(LOG_FILE) | ||||||
| 	else \ | 	@echo $$CMD; \ | ||||||
| 		grep -a "ERROR:" $(LOG_FILE); \ | 	if eval $$CMD; then \ | ||||||
| 	fi | 		ls -l $(BUILDDIR)/$(TARGET_FILE); \ | ||||||
| 	 | 		cp $(BUILDDIR)/$(TARGET_FILE) bin; \ | ||||||
| package-clean clean-local: | 	else \ | ||||||
| 	rm -rf  Release/* Release Debug/* Debug*/Release */Debug *.log *.suo | 		grep -a "ERROR:" $(LOG_FILE); \ | ||||||
|  | 	fi | ||||||
| clean: |  | ||||||
| 	rm -rf  Release/* Release Debug/* Debug */Release */Debug *.log *.suo | $(BUILDDIR): | ||||||
|  | 	[ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR) | ||||||
| distclean-local: package-clean |  | ||||||
| 	rm -f Makefile | 	 | ||||||
|  | package-clean clean-local: | ||||||
| maintainer-clean-local: | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
| 	rm -f Makefile.in |  | ||||||
|  | clean: | ||||||
|  | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
|  |  | ||||||
|  | distclean-local: package-clean | ||||||
|  | 	rm -f Makefile | ||||||
|  |  | ||||||
|  | maintainer-clean-local: | ||||||
|  | 	rm -f Makefile.in | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -20,369 +20,367 @@ | |||||||
|  *  |  *  | ||||||
|  *  Author: Juan Carlos Luciani <jluciani@novell.com> |  *  Author: Juan Carlos Luciani <jluciani@novell.com> | ||||||
|  *   |  *   | ||||||
|  ***********************************************************************/ |  ***********************************************************************/ | ||||||
| 
 | 
 | ||||||
| package ServerKeystoreSetup; | import java.io.*; | ||||||
| 
 | import java.util.*; | ||||||
| import java.io.*; | 
 | ||||||
| import java.util.*; | public class ServerKeystoreSetup | ||||||
| 
 | { | ||||||
| public class Program | 	final static int ERROR_NO_ERROR						= 0; | ||||||
| { | 	final static int ERROR_EXEC_FAILED					= -1; | ||||||
| 	final static int ERROR_NO_ERROR						= 0; | 	final static int ERROR_INVALID_NUMBER_OF_PARAMS		= -2; | ||||||
| 	final static int ERROR_EXEC_FAILED					= -1; | 	final static int ERROR_BAD_INSTALL_DIR_PARAM		= -3; | ||||||
| 	final static int ERROR_INVALID_NUMBER_OF_PARAMS		= -2; | 	final static int ERROR_MISSING_INSTALL_DIR			= -4; | ||||||
| 	final static int ERROR_BAD_INSTALL_DIR_PARAM		= -3; | 	final static int ERROR_INSTALL_DIR_NOT_A_DIR		= -5; | ||||||
| 	final static int ERROR_MISSING_INSTALL_DIR			= -4; | 	final static int ERROR_BAD_PROPERTY_FILE_PARAM		= -6; | ||||||
| 	final static int ERROR_INSTALL_DIR_NOT_A_DIR		= -5; | 	final static int ERROR_MISSING_PROPERTIES_FILE		= -7; | ||||||
| 	final static int ERROR_BAD_PROPERTY_FILE_PARAM		= -6; | 	final static int ERROR_UNABLE_TO_READ_PROPERTIES	= -8; | ||||||
| 	final static int ERROR_MISSING_PROPERTIES_FILE		= -7; | 	final static int ERROR_UNKNOWN_PARAM				= -9; | ||||||
| 	final static int ERROR_UNABLE_TO_READ_PROPERTIES	= -8; | 	final static int ERROR_MISSING_INSTALL_DIR_PARAM	= -10; | ||||||
| 	final static int ERROR_UNKNOWN_PARAM				= -9; | 	final static int ERROR_REQUIRED_VALUE_MISSING		= -11; | ||||||
| 	final static int ERROR_MISSING_INSTALL_DIR_PARAM	= -10; | 	final static int ERROR_EXEC_INTERRUPTED				= -12; | ||||||
| 	final static int ERROR_REQUIRED_VALUE_MISSING		= -11; | 	final static int ERROR_IO_EXCEPTION = -13; | ||||||
| 	final static int ERROR_EXEC_INTERRUPTED				= -12; | 
 | ||||||
| //	final static int ERROR_MISSING_INSTALL_DIR = -4; | 	final static String INSTALL_DIR						= "installdir="; | ||||||
| //	final static int ERROR_MISSING_INSTALL_DIR = -4; | 	final static String PROPERTY_FILE					= "propertyfile="; | ||||||
| //	final static int ERROR_MISSING_INSTALL_DIR = -4; | 
 | ||||||
| //	final static int ERROR_MISSING_INSTALL_DIR = -4; | 	String		sInstallDir; | ||||||
| 
 | 	Properties	properties; | ||||||
| 	final static String INSTALL_DIR						= "installdir="; | 
 | ||||||
| 	final static String PROPERTY_FILE					= "propertyfile="; | 	// debug stuff | ||||||
| 
 | 	File file; | ||||||
| 	String		sInstallDir; | 	FileWriter fw; | ||||||
| 	Properties	properties; | 
 | ||||||
| 
 | 	public static void main(String[] args) | ||||||
| 	// debug stuff | 	{ | ||||||
| 	File file; | 		ServerKeystoreSetup p = new ServerKeystoreSetup(args); | ||||||
| 	FileWriter fw; | 		p = null; | ||||||
| 
 | 	} | ||||||
| 	public static void main(String[] args) | 
 | ||||||
| 	{ | 	ServerKeystoreSetup(String[] args) | ||||||
| 		Program p = new Program(args); | 	{ | ||||||
| 		p = null; | 		int rc; | ||||||
| 	} | 
 | ||||||
| 
 | 		try | ||||||
| 	Program(String[] args) | 		{ | ||||||
| 	{ | 			// DEBUG STUFF | ||||||
| 		int rc; | 			file = new File("c:\\test2.log"); | ||||||
| 
 | 			fw = new FileWriter(file); | ||||||
| 		try | 
 | ||||||
| 		{ | 			log("Here we go again: " + args.length); | ||||||
| 			// DEBUG STUFF | 			for (int i = 0; i < args.length; i++) | ||||||
| 			file = new File("c:\\test2.log"); | 			{ | ||||||
| 			fw = new FileWriter(file); | 				log("Arg " + i + " = " + args[i] + "\r\n"); | ||||||
| 
 | 			} | ||||||
| 			log("Here we go again: " + args.length); | 			// DEBUG STUFF | ||||||
| 			for (int i = 0; i < args.length; i++) | 
 | ||||||
| 			{ | 			// Process the input params | ||||||
| 				log("Arg " + i + " = " + args[i] + "\r\n"); | 			if (ERROR_NO_ERROR == (rc = processArgs(args))) | ||||||
| 			} | 			{ | ||||||
| 			// DEBUG STUFF | 				// Make sure we got everything we need | ||||||
| 
 | 				if (ERROR_NO_ERROR == (rc = findRequiredValues())) | ||||||
| 			// Process the input params | 				{ | ||||||
| 			if (ERROR_NO_ERROR == (rc = processArgs(args))) | 					// Make sure the server keystore has been created | ||||||
| 			{ | 					rc = createServerKeystore(); | ||||||
| 				// Make sure we got everything we need | 				} | ||||||
| 				if (ERROR_NO_ERROR == (rc = findRequiredValues())) | 			} | ||||||
| 				{ | 
 | ||||||
| 					// Make sure the server keystore has been created | 			// DEBUG STUFF | ||||||
| 					rc = createServerKeystore(); | 			log(rc); | ||||||
| 				} | 			fw.flush(); | ||||||
| 			} | 			fw.close(); | ||||||
| 
 | 			// DEBUG STUFF | ||||||
| 			// DEBUG STUFF | 		} | ||||||
| 			log(rc); | 		catch (IOException e) | ||||||
| 			fw.flush(); | 		{ | ||||||
| 			fw.close(); | 			rc = ERROR_IO_EXCEPTION; | ||||||
| 			// DEBUG STUFF | 		} | ||||||
| 		} | 		System.exit(rc); | ||||||
| 		catch (IOException e) | 	} | ||||||
| 		{ | 
 | ||||||
| 			rc = -54;//ERROR_IO_EXCEPTION; | 	int processArgs(String[] args) | ||||||
| 		} | 	{ | ||||||
| 		System.exit(rc); | 		String sProperties; | ||||||
| 	} | 		File fileInstallDir = null; | ||||||
| 
 | 		File fileProperties = null; | ||||||
| 	int processArgs(String[] args) | 		FileInputStream fisProperties = null; | ||||||
| 	{ | 		int i; | ||||||
| 		String sProperties; | 
 | ||||||
| 		File fileInstallDir = null; | 		// Validate the number of parameters | ||||||
| 		File fileProperties = null; | 		if (args.length < 2) | ||||||
| 		FileInputStream fisProperties = null; | 		{ | ||||||
| 		int i; | 			return ERROR_INVALID_NUMBER_OF_PARAMS; | ||||||
| 
 | 		} | ||||||
| 		// Validate the number of parameters | 
 | ||||||
| 		if (args.length < 2) | 		for (i = 0; i < args.length; i++) | ||||||
| 		{ | 		{ | ||||||
| 			return ERROR_INVALID_NUMBER_OF_PARAMS; | 			// is this the install dir param? | ||||||
| 		} | 			if (args[i].startsWith(INSTALL_DIR)) | ||||||
| 
 | 			{ | ||||||
| 		for (i = 0; i < args.length; i++) | 				// Make sure it is more the the param tag | ||||||
| 		{ | 				if (args[i].length() <= INSTALL_DIR.length()) | ||||||
| 			// is this the install dir param? | 				{ | ||||||
| 			if (args[i].startsWith(INSTALL_DIR)) | 					return ERROR_BAD_INSTALL_DIR_PARAM; | ||||||
| 			{ | 				} | ||||||
| 				// Make sure it is more the the param tag | 
 | ||||||
| 				if (args[i].length() <= INSTALL_DIR.length()) | 				sInstallDir = args[i].substring(INSTALL_DIR.length()).trim(); | ||||||
| 				{ | 				fileInstallDir = new File(sInstallDir); | ||||||
| 					return ERROR_BAD_INSTALL_DIR_PARAM; | 
 | ||||||
| 				} | 				// Make sure the install dir can be found | ||||||
| 
 | 				if (!fileInstallDir.exists()) | ||||||
| 				sInstallDir = args[i].substring(INSTALL_DIR.length()).trim(); | 				{ | ||||||
| 				fileInstallDir = new File(sInstallDir); | 					return ERROR_MISSING_INSTALL_DIR; | ||||||
| 
 | 				} | ||||||
| 				// Make sure the install dir can be found | 
 | ||||||
| 				if (!fileInstallDir.exists()) | 				// Make sure the install dir is a directory | ||||||
| 				{ | 				if (!fileInstallDir.isDirectory()) | ||||||
| 					return ERROR_MISSING_INSTALL_DIR; | 				{ | ||||||
| 				} | 					return ERROR_INSTALL_DIR_NOT_A_DIR; | ||||||
| 
 | 				} | ||||||
| 				// Make sure the install dir is a directory | 			} | ||||||
| 				if (!fileInstallDir.isDirectory()) | 
 | ||||||
| 				{ | 			// is this the properties file param? | ||||||
| 					return ERROR_INSTALL_DIR_NOT_A_DIR; | 			else if (args[i].startsWith(PROPERTY_FILE)) | ||||||
| 				} | 			{ | ||||||
| 			} | 				// Make sure it is more the the param tag | ||||||
| 
 | 				if (args[i].length() <= PROPERTY_FILE.length()) | ||||||
| 			// is this the properties file param? | 				{ | ||||||
| 			else if (args[i].startsWith(PROPERTY_FILE)) | 					return ERROR_BAD_PROPERTY_FILE_PARAM; | ||||||
| 			{ | 				} | ||||||
| 				// Make sure it is more the the param tag | 
 | ||||||
| 				if (args[i].length() <= PROPERTY_FILE.length()) | 				sProperties = args[i].substring(PROPERTY_FILE.length()).trim(); | ||||||
| 				{ | 				fileProperties = new File(sProperties); | ||||||
| 					return ERROR_BAD_PROPERTY_FILE_PARAM; | 
 | ||||||
| 				} | 				// Make sure the properties file can be found | ||||||
| 
 | 				if (!fileProperties.exists()) | ||||||
| 				sProperties = args[i].substring(PROPERTY_FILE.length()).trim(); | 				{ | ||||||
| 				fileProperties = new File(sProperties); | 					return ERROR_MISSING_PROPERTIES_FILE; | ||||||
| 
 | 				} | ||||||
| 				// Make sure the properties file can be found | 
 | ||||||
| 				if (!fileProperties.exists()) | 				// Read the properties | ||||||
| 				{ | 				try | ||||||
| 					return ERROR_MISSING_PROPERTIES_FILE; | 				{ | ||||||
| 				} | 					fisProperties = new FileInputStream(fileProperties); | ||||||
| 
 | 					properties = new Properties(); | ||||||
| 				// Read the properties | 					properties.load(fisProperties); | ||||||
| 				try | 				} | ||||||
| 				{ | 				catch (IOException ioe) | ||||||
| 					fisProperties = new FileInputStream(fileProperties); | 				{ | ||||||
| 					properties = new Properties(); | 					return ERROR_UNABLE_TO_READ_PROPERTIES; | ||||||
| 					properties.load(fisProperties); | 				} | ||||||
| 				} | 			} | ||||||
| 				catch (IOException ioe) | 
 | ||||||
| 				{ | 			// Unknown parameter | ||||||
| 					return ERROR_UNABLE_TO_READ_PROPERTIES; | 			else | ||||||
| 				} | 			{ | ||||||
| 			} | 				log(ERROR_UNKNOWN_PARAM, args[i]); | ||||||
| 
 | 				return ERROR_UNKNOWN_PARAM; | ||||||
| 			// Unknown parameter | 			} | ||||||
| 			else | 		} | ||||||
| 			{ | 
 | ||||||
| 				log(ERROR_UNKNOWN_PARAM, args[i]); | 		// Make sure we got an install dir | ||||||
| 				return ERROR_UNKNOWN_PARAM; | 		if (null == fileInstallDir) | ||||||
| 			} | 		{ | ||||||
| 		} | 			return ERROR_MISSING_INSTALL_DIR_PARAM; | ||||||
| 
 | 		} | ||||||
| 		// Make sure we got an install dir | 
 | ||||||
| 		if (null == fileInstallDir) | 		return ERROR_NO_ERROR; | ||||||
| 		{ | 	} | ||||||
| 			return ERROR_MISSING_INSTALL_DIR_PARAM; | 
 | ||||||
| 		} | 	int findRequiredValues() | ||||||
| 
 | 	{ | ||||||
| 		return ERROR_NO_ERROR; | 		String[] rgsRequired = {  | ||||||
| 	} | 			"ATS_JAVA_HOME",  | ||||||
| 
 | 			"COMPUTERNAME"}; | ||||||
| 	int findRequiredValues() | 		int i; | ||||||
| 	{ | 		String sValue; | ||||||
| 		String[] rgsRequired = {  | 
 | ||||||
| 			"ATS_JAVA_HOME",  | 		for (i = 0; i < rgsRequired.length; i++) | ||||||
| 			"COMPUTERNAME"}; | 		{ | ||||||
| 		int i; | 			log("look for required value: " + rgsRequired[i]); | ||||||
| 		String sValue; | 
 | ||||||
| 
 | 			if (!properties.containsKey(rgsRequired[i])) | ||||||
| 		for (i = 0; i < rgsRequired.length; i++) | 			{ | ||||||
| 		{ | 				log("look for required value in envirement: " + rgsRequired[i]); | ||||||
| 			log("look for required value: " + rgsRequired[i]); | 				if (null == (sValue = System.getProperty(rgsRequired[i]))) | ||||||
| 
 | 				{ | ||||||
| 			if (!properties.containsKey(rgsRequired[i])) | 					log("unable to find required value in envirement: " + rgsRequired[i]); | ||||||
| 			{ | 					return ERROR_REQUIRED_VALUE_MISSING; | ||||||
| 				log("look for required value in envirement: " + rgsRequired[i]); | 				} | ||||||
| 				if (null == (sValue = System.getProperty(rgsRequired[i]))) | 				log("found required value in envirement: " + rgsRequired[i] + "  =  " + sValue); | ||||||
| 				{ | 				properties.put(rgsRequired[i], sValue); | ||||||
| 					log("unable to find required value in envirement: " + rgsRequired[i]); | 			} | ||||||
| 					return ERROR_REQUIRED_VALUE_MISSING; | 			log("found required value: " + rgsRequired[i] + "  =  " + properties.get(rgsRequired[i])); | ||||||
| 				} | 		} | ||||||
| 				log("found required value in envirement: " + rgsRequired[i] + "  =  " + sValue); | 		return ERROR_NO_ERROR; | ||||||
| 				properties.put(rgsRequired[i], sValue); | 	} | ||||||
| 			} | 
 | ||||||
| 			log("found required value: " + rgsRequired[i] + "  =  " + properties.get(rgsRequired[i])); | 
 | ||||||
| 		} | 	int createServerKeystore() | ||||||
| 		return ERROR_NO_ERROR; | 	{ | ||||||
| 	} | 		int rc; | ||||||
| 
 | 		String sKeytool = properties.get("ATS_JAVA_HOME") + "\\bin\\keytool.exe"; | ||||||
| 
 | 		String sHost = (String)properties.get("COMPUTERNAME"); | ||||||
| 	int createServerKeystore() | 
 | ||||||
| 	{ | 		log("keytool = " + sKeytool); | ||||||
| 		int rc; | 		log("host = " + sHost); | ||||||
| 		String sKeytool = properties.get("ATS_JAVA_HOME") + "\\bin\\keytool.exe"; | 
 | ||||||
| 		String sHost = (String)properties.get("COMPUTERNAME"); | 		// Do not do anything if the server keystore has already been created | ||||||
| 
 | 		if (keyStoreAlreadyExists()) | ||||||
| 		log("keytool = " + sKeytool); | 		{ | ||||||
| 		log("host = " + sHost); | 			return ERROR_NO_ERROR; | ||||||
| 
 | 		} | ||||||
| 		// Do not do anything if the server keystore has already been created | 
 | ||||||
| 		if (keyStoreAlreadyExists()) | 		// Create the server keystore with the key that will be used for signing tokens | ||||||
| 		{ | 		if (ERROR_NO_ERROR == (rc =invokeCommand(sKeytool + " -genkey -alias signingKey -keystore " +  | ||||||
| 			return ERROR_NO_ERROR; | 			sInstallDir + "ats\\etc\\keys\\server\\jks-store -dname \"cn=casaatsd@" + sHost + | ||||||
| 		} | 			"\" -validity 3600 -keypass secret -storepass secret"))) | ||||||
| 
 | 		{ | ||||||
| 		// Create the server keystore with the key that will be used for signing tokens | 			// Export self-signed certificate for the signing key | ||||||
| 		if (ERROR_NO_ERROR == (rc =invokeCommand(sKeytool + " -genkey -alias signingKey -keystore " +  | 			if (ERROR_NO_ERROR == (rc = invokeCommand(sKeytool + " -export -keystore " + | ||||||
| 			sInstallDir + "ats\\etc\\keys\\server\\jks-store -dname \"cn=casaatsd@" + sHost + | 				sInstallDir + "ats\\etc\\keys\\server\\jks-store -alias signingKey -storepass secret -keypass secret -file " + | ||||||
| 			"\" -validity 3600 -keypass secret -storepass secret"))) | 				sInstallDir + "ats\\etc\\keys\\casaatsdSigningCert"))) | ||||||
| 		{ | 			{ | ||||||
| 			// Export self-signed certificate for the signing key | 				// Create a key for Tomcat to do SSL communications | ||||||
| 			if (ERROR_NO_ERROR == (rc = invokeCommand(sKeytool + " -export -keystore " + | 				rc = invokeCommand(sKeytool + " -genkey -alias tomcat -keyalg RSA -keystore " + | ||||||
| 				sInstallDir + "ats\\etc\\keys\\server\\jks-store -alias signingKey -storepass secret -keypass secret -file " + | 					sInstallDir + "ats\\etc\\keys\\server\\jks-store -dname \"cn=" + | ||||||
| 				sInstallDir + "ats\\etc\\keys\\casaatsdSigningCert"))) | 					sHost + "\" -validity 3600 -keypass secret -storepass secret"); | ||||||
| 			{ | 			} | ||||||
| 				// Create a key for Tomcat to do SSL communications | 		} | ||||||
| 				rc = invokeCommand(sKeytool + " -genkey -alias tomcat -keyalg RSA -keystore " + | 		return rc; | ||||||
| 					sInstallDir + "ats\\etc\\keys\\server\\jks-store -dname \"cn=" + | 	} | ||||||
| 					sHost + "\" -validity 3600 -keypass secret -storepass secret"); | 
 | ||||||
| 			} | 	boolean keyStoreAlreadyExists() | ||||||
| 		} | 	{ | ||||||
| 		return rc; | 		File fileKeystore = new File(sInstallDir + "ats\\etc\\keys\\server\\jks-store"); | ||||||
| 	} | 
 | ||||||
| 
 | 		// Why is this always returning true?  exists() also always returns true. | ||||||
| 	boolean keyStoreAlreadyExists() | 		// log("keystore (" + sInstallDir + "ats\\etc\\keys\\server\\jks-store" + ") already exists = " + (file.isFile())); | ||||||
| 	{ | 		//		return (file.isFile()); | ||||||
| 		File fileKeystore = new File(sInstallDir + "ats\\etc\\keys\\server\\jks-store"); | 
 | ||||||
| 
 | 		File fileParent = fileKeystore.getParentFile(); | ||||||
| 		// Why is this always returning true?  exists() also always returns true. | 		String[] rgChildren = fileParent.list(); | ||||||
| 		// log("keystore (" + sInstallDir + "ats\\etc\\keys\\server\\jks-store" + ") already exists = " + (file.isFile())); | 		if (null != rgChildren) | ||||||
| 		//		return (file.isFile()); | 		{ | ||||||
| 
 | 			for (int i = 0; i < rgChildren.length; i++) | ||||||
| 		File fileParent = fileKeystore.getParentFile(); | 			{ | ||||||
| 		String[] rgChildren = fileParent.list(); | 				log("child " + i + " = " + rgChildren[i]); | ||||||
| 		if (null != rgChildren) | 				if ("jks-store".equals(rgChildren[i])) | ||||||
| 		{ | 				{ | ||||||
| 			for (int i = 0; i < rgChildren.length; i++) | 					return true; | ||||||
| 			{ | 				} | ||||||
| 				log("child " + i + " = " + rgChildren[i]); | 			} | ||||||
| 				if ("jks-store".equals(rgChildren[i])) | 		} | ||||||
| 				{ | 
 | ||||||
| 					return true; |  		return false; | ||||||
| 				} | 	} | ||||||
| 			} | 
 | ||||||
| 		} | 	int invokeCommand(String sCommand) | ||||||
| 
 | 	{ | ||||||
|  		return false; | 		Process p; | ||||||
| 	} | 		int rc; | ||||||
| 
 | 
 | ||||||
| 	int invokeCommand(String sCommand) | 		log("invoke command: "  + sCommand); | ||||||
| 	{ | 		Runtime runtime = Runtime.getRuntime(); | ||||||
| 		Process p; | 
 | ||||||
| 		int rc; | 		try | ||||||
| 
 | 		{ | ||||||
| 		log("invoke command: "  + sCommand); | 			p = runtime.exec(sCommand); | ||||||
| 		Runtime runtime = Runtime.getRuntime(); | 			try | ||||||
| 
 | 			{ | ||||||
| 		try | 				rc = p.waitFor(); | ||||||
| 		{ | 				log("invoke command return code: " + rc); | ||||||
| 			p = runtime.exec(sCommand); | 			} | ||||||
| 			try | 			catch (InterruptedException ie) | ||||||
| 			{ | 			{ | ||||||
| 				rc = p.waitFor(); | 				log(ERROR_EXEC_INTERRUPTED, sCommand); | ||||||
| 				log("invoke command return code: " + rc); | 				return ERROR_EXEC_INTERRUPTED; | ||||||
| 			} | 			} | ||||||
| 			catch (InterruptedException ie) | 		} | ||||||
| 			{ | 		catch (IOException e) | ||||||
| 				log(ERROR_EXEC_INTERRUPTED, sCommand); | 		{ | ||||||
| 				return ERROR_EXEC_INTERRUPTED; | 			log("Ioexception"); | ||||||
| 			} | 			return ERROR_EXEC_FAILED; | ||||||
| 		} | 		} | ||||||
| 		catch (IOException e) | 		 | ||||||
| 		{ | 		return ERROR_NO_ERROR; | ||||||
| 			log("Ioexception"); | 	} | ||||||
| 			return ERROR_EXEC_FAILED; | 
 | ||||||
| 		} | 	void log(int err) | ||||||
| 		 | 	{ | ||||||
| 		return ERROR_NO_ERROR; | 		log(err, null); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	void log(int err) | 	void log(int err, String s) | ||||||
| 	{ | 	{ | ||||||
| 		log(err, null); | 		String sMessage = ""; | ||||||
| 	} | 
 | ||||||
| 
 | 		switch (err) | ||||||
| 	void log(int err, String s) | 		{ | ||||||
| 	{ | 			case ERROR_NO_ERROR: | ||||||
| 		String sMessage = ""; | 				sMessage = "No error"; | ||||||
| 
 | 				break; | ||||||
| 		switch (err) | 			case ERROR_EXEC_FAILED: | ||||||
| 		{ | 				sMessage = "Execute command failed "; | ||||||
| 			case ERROR_NO_ERROR: | 				break; | ||||||
| 				sMessage = "No error"; | 			case ERROR_INVALID_NUMBER_OF_PARAMS: | ||||||
| 				break; | 				sMessage = "Invalid number of params"; | ||||||
| 			case ERROR_EXEC_FAILED: | 				break; | ||||||
| 				sMessage = "Execute command failed "; | 			case ERROR_BAD_INSTALL_DIR_PARAM: | ||||||
| 				break; | 				sMessage = "Install dir parameter is bad"; | ||||||
| 			case ERROR_INVALID_NUMBER_OF_PARAMS: | 				break; | ||||||
| 				sMessage = "Invalid number of params"; | 			case ERROR_MISSING_INSTALL_DIR: | ||||||
| 				break; | 				sMessage = "Missing install dir"; | ||||||
| 			case ERROR_BAD_INSTALL_DIR_PARAM: | 				break; | ||||||
| 				sMessage = "Install dir parameter is bad"; | 			case ERROR_INSTALL_DIR_NOT_A_DIR: | ||||||
| 				break; | 				sMessage = "Install dir is not a dir"; | ||||||
| 			case ERROR_MISSING_INSTALL_DIR: | 				break; | ||||||
| 				sMessage = "Missing install dir"; | 			case ERROR_BAD_PROPERTY_FILE_PARAM: | ||||||
| 				break; | 				sMessage = "Invalid porperty file parameter"; | ||||||
| 			case ERROR_INSTALL_DIR_NOT_A_DIR: | 				break; | ||||||
| 				sMessage = "Install dir is not a dir"; | 			case ERROR_MISSING_PROPERTIES_FILE: | ||||||
| 				break; | 				sMessage = "Property file not found"; | ||||||
| 			case ERROR_BAD_PROPERTY_FILE_PARAM: | 				break; | ||||||
| 				sMessage = "Invalid porperty file parameter"; | 			case ERROR_UNABLE_TO_READ_PROPERTIES: | ||||||
| 				break; | 				sMessage = "Unable to read property file"; | ||||||
| 			case ERROR_MISSING_PROPERTIES_FILE: | 				break; | ||||||
| 				sMessage = "Property file not found"; | 			case ERROR_UNKNOWN_PARAM: | ||||||
| 				break; | 				sMessage = "Unknown parameter: "; | ||||||
| 			case ERROR_UNABLE_TO_READ_PROPERTIES: | 				break; | ||||||
| 				sMessage = "Unable to read property file"; | 			case ERROR_MISSING_INSTALL_DIR_PARAM: | ||||||
| 				break; | 				sMessage = "Install dir parameter is missing"; | ||||||
| 			case ERROR_UNKNOWN_PARAM: | 				break; | ||||||
| 				sMessage = "Unknown parameter: "; | 			case ERROR_REQUIRED_VALUE_MISSING: | ||||||
| 				break; | 				sMessage = "Required value is missing "; | ||||||
| 			case ERROR_MISSING_INSTALL_DIR_PARAM: | 				break; | ||||||
| 				sMessage = "Install dir parameter is missing"; | 			case ERROR_EXEC_INTERRUPTED: | ||||||
| 				break; | 				sMessage = "Execution iinterrupted: "; | ||||||
| 			case ERROR_REQUIRED_VALUE_MISSING: | 				break; | ||||||
| 				sMessage = "Required value is missing "; | 			case ERROR_IO_EXCEPTION: | ||||||
| 				break; | 				sMessage = "IO Exception "; | ||||||
| 			case ERROR_EXEC_INTERRUPTED: | 				break; | ||||||
| 				sMessage = "Execution iinterrupted: "; | 			default: | ||||||
| 				break; | 				sMessage = "Unknown error"; | ||||||
| 			default: | 				break; | ||||||
| 				sMessage = "Unknown error"; | 		} | ||||||
| 				break; | 
 | ||||||
| 		} | 		if (null != s) | ||||||
| 
 | 		{ | ||||||
| 		if (null != s) | 			sMessage = sMessage + s; | ||||||
| 		{ | 		} | ||||||
| 			sMessage = sMessage + s; | 		log(sMessage); | ||||||
| 		} | 	} | ||||||
| 		log(sMessage); | 
 | ||||||
| 	} | 	void log(String s) | ||||||
| 
 | 	{ | ||||||
| 	void log(String s) | 		try | ||||||
| 	{ | 		{ | ||||||
| 		try | 			fw.write(this.getClass().getName() + ": " + s + "\r\n"); | ||||||
| 		{ | 		} | ||||||
| 			fw.write(this.getClass().getName() + ": " + s + "\r\n"); | 		catch (IOException ioe) | ||||||
| 		} | 		{ | ||||||
| 		catch (IOException ioe) | 		} | ||||||
| 		{ | 	} | ||||||
| 		} | 
 | ||||||
| 	} | } | ||||||
| 
 |  | ||||||
| } |  | ||||||
| @@ -1,47 +0,0 @@ | |||||||
| <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |  | ||||||
|     <Platform Condition=" '$(Platform)' == '' ">x86</Platform> |  | ||||||
|     <ProductVersion>8.0.50727</ProductVersion> |  | ||||||
|     <SchemaVersion>2.0</SchemaVersion> |  | ||||||
|     <ProjectGuid>{BAF8BCFB-1C97-4CA7-B03E-E588A67B21E0}</ProjectGuid> |  | ||||||
|     <OutputType>Exe</OutputType> |  | ||||||
|     <RootNamespace>ServerKeystoreSetup</RootNamespace> |  | ||||||
|     <AssemblyName>ServerKeystoreSetup</AssemblyName> |  | ||||||
|     <WarningLevel>4</WarningLevel> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> |  | ||||||
|     <DebugSymbols>true</DebugSymbols> |  | ||||||
|     <DebugType>full</DebugType> |  | ||||||
|     <Optimize>false</Optimize> |  | ||||||
|     <OutputPath>bin\Debug\</OutputPath> |  | ||||||
|     <DefineConstants>DEBUG;TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> |  | ||||||
|     <DebugType>pdbonly</DebugType> |  | ||||||
|     <Optimize>true</Optimize> |  | ||||||
|     <OutputPath>bin\Release\</OutputPath> |  | ||||||
|     <DefineConstants>TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Reference Include="System" /> |  | ||||||
|     <Reference Include="System.Data" /> |  | ||||||
|     <Reference Include="System.Xml" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Compile Include="Program.jsl" /> |  | ||||||
|     <Compile Include="Properties\AssemblyInfo.jsl" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <Import Project="$(MSBuildBinPath)\Microsoft.VisualJSharp.targets" /> |  | ||||||
|   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.  |  | ||||||
|        Other similar extension points exist, see Microsoft.Common.targets. |  | ||||||
|   <Target Name="BeforeBuild"> |  | ||||||
|   </Target> |  | ||||||
|   <Target Name="AfterBuild"> |  | ||||||
|   </Target> |  | ||||||
|   --> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <PostBuildEvent> |  | ||||||
|     </PostBuildEvent> |  | ||||||
|   </PropertyGroup> |  | ||||||
| </Project> |  | ||||||
| @@ -24,40 +24,48 @@ SUBDIRS = | |||||||
|  |  | ||||||
| DIST_SUBDIRS = | DIST_SUBDIRS = | ||||||
|  |  | ||||||
| EXTRA_DIST = SetupAsWindowsService.vjsproj Program.jsl | EXTRA_DIST = SetupAsWindowsService.java | ||||||
|  |  | ||||||
| if DEBUG | if DEBUG | ||||||
| TARGET_CFG = Debug | TARGET_CFG = Debug | ||||||
|  | DEBUG = -g | ||||||
| else | else | ||||||
| TARGET_CFG = Release | TARGET_CFG = Release | ||||||
|  | DEBUG = -g:none | ||||||
| endif | endif | ||||||
|  |  | ||||||
| PACKAGE = SetupAsWindowsService | PACKAGE = SetupAsWindowsService | ||||||
| TARGET_FILE = $(PACKAGE).exe | TARGET_FILE = $(PACKAGE).class | ||||||
| LOG_FILE = $(PACKAGE).log | LOG_FILE = $(PACKAGE).log | ||||||
|  | JAVAFILES = SetupAsWindowsService.java  | ||||||
|  | CLASSES = $(addprefix $(BUILDDIR)/, $(JAVAFILES:%.java=%.class)) | ||||||
|  | BUILDDIR = bin/$(TARGET_CFG) | ||||||
|  |  | ||||||
| .PHONY: package package-clean package-install package-uninstall devenv | .PHONY: package package-clean package-install package-uninstall | ||||||
|  |  | ||||||
| package: $(TARGET_FILE) | all: $(BUILDDIR) $(CLASSES) | ||||||
|  |  | ||||||
| devenv: | $(BUILDDIR)/%.class: %.java | ||||||
| 	@if ! test -x "$(VSINSTALLDIR)/Common7/IDE/devenv.exe"; then echo "Error: Microsoft Visual Studio .NET is currently required to build MSI and MSM packages"; exit 1; fi |  | ||||||
|  |  | ||||||
| $(TARGET_FILE): devenv |  | ||||||
| 	@rm -f $(LOG_FILE) $@ | 	@rm -f $(LOG_FILE) $@ | ||||||
| 	@CMD='"$(VSINSTALLDIR)/Common7/IDE/devenv.exe" ../server-java_msi/server-java_msi.sln /build $(TARGET_CFG) /project $(PACKAGE) /out $(LOG_FILE)'; \ | 	@echo [======== Compiling $@ ========] | ||||||
| 	echo $$CMD; \ | 	@javac $(DEBUG) -d $(BUILDDIR) $< 2> $(LOG_FILE) | ||||||
|  | 	@echo $$CMD; \ | ||||||
| 	if eval $$CMD; then \ | 	if eval $$CMD; then \ | ||||||
| 		ls -l bin/$(TARGET_CFG)/$(TARGET_FILE); \ | 		ls -l $(BUILDDIR)/$(TARGET_FILE); \ | ||||||
|  | 		cp $(BUILDDIR)/$(TARGET_FILE) bin; \ | ||||||
| 	else \ | 	else \ | ||||||
| 		grep -a "ERROR:" $(LOG_FILE); \ | 		grep -a "ERROR:" $(LOG_FILE); \ | ||||||
| 	fi | 	fi | ||||||
|  |  | ||||||
|  | $(BUILDDIR): | ||||||
|  | 	[ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR) | ||||||
|  |  | ||||||
| 	 | 	 | ||||||
| package-clean clean-local: | package-clean clean-local: | ||||||
| 	rm -rf  Release/* Release Debug/* Debug*/Release */Debug *.log *.suo | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
|  |  | ||||||
| clean: | clean: | ||||||
| 	rm -rf  Release/* Release Debug/* Debug */Release */Debug *.log *.suo | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
|  |  | ||||||
| distclean-local: package-clean | distclean-local: package-clean | ||||||
| 	rm -f Makefile | 	rm -f Makefile | ||||||
|   | |||||||
| @@ -1,36 +0,0 @@ | |||||||
| import System.Reflection.*; |  | ||||||
| import System.Runtime.CompilerServices.*; |  | ||||||
| import System.Runtime.InteropServices.*; |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // General Information about an assembly is controlled through the following  |  | ||||||
| // set of attributes. Change these attribute values to modify the information |  | ||||||
| // associated with an assembly. |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyTitle("SetupAsWindowsService") */ |  | ||||||
| /** @assembly AssemblyDescription("") */ |  | ||||||
| /** @assembly AssemblyCompany("Novell") */ |  | ||||||
| /** @assembly AssemblyProduct("SetupAsWindowsService") */ |  | ||||||
| /** @assembly AssemblyCopyright("Copyright © Novell 2007") */ |  | ||||||
| /** @assembly AssemblyTrademark("") */ |  | ||||||
| /** @assembly AssemblyCulture("") */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // The ComVisible attribute controls accessibility of an individual type |  | ||||||
| // or member, or of all types within this assembly, from COM.  To access |  | ||||||
| // a type or member in this assembly from COM, set the ComVisible attribute |  | ||||||
| // on that type or member to true. |  | ||||||
| /** @assembly ComVisible(false) */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // Version information for an assembly consists of the following four values: |  | ||||||
| // |  | ||||||
| //      Major Version |  | ||||||
| //      Minor Version  |  | ||||||
| //      Build Number |  | ||||||
| //      Revision |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyVersion("1.0.0.0") */ |  | ||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1,43 +0,0 @@ | |||||||
| <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |  | ||||||
|     <Platform Condition=" '$(Platform)' == '' ">x86</Platform> |  | ||||||
|     <ProductVersion>8.0.50727</ProductVersion> |  | ||||||
|     <SchemaVersion>2.0</SchemaVersion> |  | ||||||
|     <ProjectGuid>{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1}</ProjectGuid> |  | ||||||
|     <OutputType>Exe</OutputType> |  | ||||||
|     <RootNamespace>SetupAsWindowsService</RootNamespace> |  | ||||||
|     <AssemblyName>SetupAsWindowsService</AssemblyName> |  | ||||||
|     <WarningLevel>4</WarningLevel> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> |  | ||||||
|     <DebugSymbols>true</DebugSymbols> |  | ||||||
|     <DebugType>full</DebugType> |  | ||||||
|     <Optimize>false</Optimize> |  | ||||||
|     <OutputPath>bin\Debug\</OutputPath> |  | ||||||
|     <DefineConstants>DEBUG;TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> |  | ||||||
|     <DebugType>pdbonly</DebugType> |  | ||||||
|     <Optimize>true</Optimize> |  | ||||||
|     <OutputPath>bin\Release\</OutputPath> |  | ||||||
|     <DefineConstants>TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Reference Include="System" /> |  | ||||||
|     <Reference Include="System.Data" /> |  | ||||||
|     <Reference Include="System.Xml" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Compile Include="Program.jsl" /> |  | ||||||
|     <Compile Include="Properties\AssemblyInfo.jsl" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <Import Project="$(MSBuildBinPath)\Microsoft.VisualJSharp.targets" /> |  | ||||||
|   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.  |  | ||||||
|        Other similar extension points exist, see Microsoft.Common.targets. |  | ||||||
|   <Target Name="BeforeBuild"> |  | ||||||
|   </Target> |  | ||||||
|   <Target Name="AfterBuild"> |  | ||||||
|   </Target> |  | ||||||
|   --> |  | ||||||
| </Project> |  | ||||||
| @@ -1,69 +1,77 @@ | |||||||
| ####################################################################### | ####################################################################### | ||||||
| # | # | ||||||
| #  Copyright (C) 2004 Novell, Inc. | #  Copyright (C) 2004 Novell, Inc. | ||||||
| # | # | ||||||
| #  This program is free software; you can redistribute it and/or | #  This program is free software; you can redistribute it and/or | ||||||
| #  modify it under the terms of the GNU General Public | #  modify it under the terms of the GNU General Public | ||||||
| #  License as published by the Free Software Foundation; either | #  License as published by the Free Software Foundation; either | ||||||
| #  version 2 of the License, or (at your option) any later version. | #  version 2 of the License, or (at your option) any later version. | ||||||
| # | # | ||||||
| #  This program is distributed in the hope that it will be useful, | #  This program is distributed in the hope that it will be useful, | ||||||
| #  but WITHOUT ANY WARRANTY; without even the implied warranty of | #  but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
| #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | ||||||
| #  General Public License for more details. | #  General Public License for more details. | ||||||
| # | # | ||||||
| #  You should have received a copy of the GNU General Public | #  You should have received a copy of the GNU General Public | ||||||
| #  License along with this program; if not, write to the Free | #  License along with this program; if not, write to the Free | ||||||
| #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | #  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||||||
| # | # | ||||||
| #  Author: Greg Richardson <grichardson@novell.com> | #  Author: Greg Richardson <grichardson@novell.com> | ||||||
| # | # | ||||||
| ####################################################################### | ####################################################################### | ||||||
|  |  | ||||||
| SUBDIRS = | SUBDIRS = | ||||||
|  |  | ||||||
| DIST_SUBDIRS = | DIST_SUBDIRS = | ||||||
|  |  | ||||||
| EXTRA_DIST = UpdateWarFile.vjsproj Program.jsl | EXTRA_DIST = UpdateWarFile.java | ||||||
|  |  | ||||||
| if DEBUG | if DEBUG | ||||||
| TARGET_CFG = Debug | TARGET_CFG = Debug | ||||||
| else | DEBUG = -g | ||||||
| TARGET_CFG = Release | else | ||||||
| endif | TARGET_CFG = Release | ||||||
|  | DEBUG = -g:none | ||||||
| PACKAGE = UpdateWarFile | endif | ||||||
| TARGET_FILE = $(PACKAGE).exe |  | ||||||
| LOG_FILE = $(PACKAGE).log | PACKAGE = UpdateWarFile | ||||||
|  | TARGET_FILE = $(PACKAGE).class | ||||||
| .PHONY: package package-clean package-install package-uninstall devenv | LOG_FILE = $(PACKAGE).log | ||||||
|  | JAVAFILES = UpdateWarFile.java  | ||||||
| package: $(TARGET_FILE) | BUILDDIR = bin/$(TARGET_CFG) | ||||||
|  | CLASSES = $(addprefix $(BUILDDIR)/, $(JAVAFILES:%.java=%.class)) | ||||||
| devenv: |  | ||||||
| 	@if ! test -x "$(VSINSTALLDIR)/Common7/IDE/devenv.exe"; then echo "Error: Microsoft Visual Studio .NET is currently required to build MSI and MSM packages"; exit 1; fi | .PHONY: package package-clean package-install package-uninstall | ||||||
|  |  | ||||||
| $(TARGET_FILE): devenv | all: $(BUILDDIR) $(CLASSES) | ||||||
| 	@rm -f $(LOG_FILE) $@ |  | ||||||
| 	@CMD='"$(VSINSTALLDIR)/Common7/IDE/devenv.exe" ../server-java_msi/server-java_msi.sln /build $(TARGET_CFG) /project $(PACKAGE) /out $(LOG_FILE)'; \ | $(BUILDDIR)/%.class: %.java | ||||||
| 	echo $$CMD; \ | 	@rm -f $(LOG_FILE) $@ | ||||||
| 	if eval $$CMD; then \ | 	@echo [======== Compiling $@ ========] | ||||||
| 		ls -l bin/$(TARGET_CFG)/$(TARGET_FILE); \ | 	@javac $(DEBUG) -d $(BUILDDIR) $< 2> $(LOG_FILE) | ||||||
| 	else \ | 	@echo $$CMD; \ | ||||||
| 		grep -a "ERROR:" $(LOG_FILE); \ | 	if eval $$CMD; then \ | ||||||
| 	fi | 		ls -l $(BUILDDIR)/$(TARGET_FILE); \ | ||||||
| 	 | 		cp $(BUILDDIR)/$(TARGET_FILE) bin; \ | ||||||
| package-clean clean-local: | 	else \ | ||||||
| 	rm -rf  Release/* Release Debug/* Debug*/Release */Debug *.log *.suo | 		grep -a "ERROR:" $(LOG_FILE); \ | ||||||
|  | 	fi | ||||||
| clean: |  | ||||||
| 	rm -rf  Release/* Release Debug/* Debug */Release */Debug *.log *.suo | $(BUILDDIR): | ||||||
|  | 	[ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR) | ||||||
| distclean-local: package-clean |  | ||||||
| 	rm -f Makefile | 	 | ||||||
|  | package-clean clean-local: | ||||||
| maintainer-clean-local: | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
| 	rm -f Makefile.in |  | ||||||
|  | clean: | ||||||
|  | 	rm -rf  bin/Release/* bin/Release bin/Debug/* bin/Debug bin/* bin *.log | ||||||
|  |  | ||||||
|  | distclean-local: package-clean | ||||||
|  | 	rm -f Makefile | ||||||
|  |  | ||||||
|  | maintainer-clean-local: | ||||||
|  | 	rm -f Makefile.in | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,36 +0,0 @@ | |||||||
| import System.Reflection.*; |  | ||||||
| import System.Runtime.CompilerServices.*; |  | ||||||
| import System.Runtime.InteropServices.*; |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // General Information about an assembly is controlled through the following  |  | ||||||
| // set of attributes. Change these attribute values to modify the information |  | ||||||
| // associated with an assembly. |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyTitle("UpdateWarFile") */ |  | ||||||
| /** @assembly AssemblyDescription("") */ |  | ||||||
| /** @assembly AssemblyCompany("Novell") */ |  | ||||||
| /** @assembly AssemblyProduct("UpdateWarFile") */ |  | ||||||
| /** @assembly AssemblyCopyright("Copyright © Novell 2006") */ |  | ||||||
| /** @assembly AssemblyTrademark("") */ |  | ||||||
| /** @assembly AssemblyCulture("") */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // The ComVisible attribute controls accessibility of an individual type |  | ||||||
| // or member, or of all types within this assembly, from COM.  To access |  | ||||||
| // a type or member in this assembly from COM, set the ComVisible attribute |  | ||||||
| // on that type or member to true. |  | ||||||
| /** @assembly ComVisible(false) */ |  | ||||||
|  |  | ||||||
|  |  | ||||||
| // |  | ||||||
| // Version information for an assembly consists of the following four values: |  | ||||||
| // |  | ||||||
| //      Major Version |  | ||||||
| //      Minor Version  |  | ||||||
| //      Build Number |  | ||||||
| //      Revision |  | ||||||
| // |  | ||||||
|  |  | ||||||
| /** @assembly AssemblyVersion("1.0.0.0") */ |  | ||||||
| @@ -22,11 +22,9 @@ | |||||||
|  *   |  *   | ||||||
|  ***********************************************************************/ |  ***********************************************************************/ | ||||||
| 
 | 
 | ||||||
| package UpdateWarFile; |  | ||||||
| 
 | 
 | ||||||
| import java.lang.Throwable; | import java.lang.Throwable; | ||||||
| import java.lang.NullPointerException; | import java.lang.NullPointerException; | ||||||
| import com.zerog.ia.api.pub.*; |  | ||||||
| import java.util.*; | import java.util.*; | ||||||
| import java.net.*; | import java.net.*; | ||||||
| import java.io.*; | import java.io.*; | ||||||
| @@ -34,9 +32,9 @@ import java.util.zip.*; | |||||||
| import java.util.jar.*; | import java.util.jar.*; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Summary description for Program |  * Summary description for UpdateWarFile | ||||||
|  */ |  */ | ||||||
| public class Program | public class UpdateWarFile | ||||||
| { | { | ||||||
| 	final static String INSTALL_DIR_PARAM = "ATS_INSTALL_DIR="; | 	final static String INSTALL_DIR_PARAM = "ATS_INSTALL_DIR="; | ||||||
| 
 | 
 | ||||||
| @@ -65,10 +63,10 @@ public class Program | |||||||
| 
 | 
 | ||||||
| 	public static void main(String[] args) | 	public static void main(String[] args) | ||||||
| 	{ | 	{ | ||||||
| 		Program p = new Program(args); | 		UpdateWarFile p = new UpdateWarFile(args); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	Program(String[] args) | 	UpdateWarFile(String[] args) | ||||||
| 	{ | 	{ | ||||||
| 		int rc = ERROR_NO_ERROR; | 		int rc = ERROR_NO_ERROR; | ||||||
| 
 | 
 | ||||||
| @@ -100,7 +98,7 @@ public class Program | |||||||
| 		{ | 		{ | ||||||
| 			try | 			try | ||||||
| 			{ | 			{ | ||||||
| 				log("return code = " + rc); | 				log(rc); | ||||||
| 				fw.flush(); | 				fw.flush(); | ||||||
| 				fw.close(); | 				fw.close(); | ||||||
| 			} | 			} | ||||||
| @@ -1,47 +0,0 @@ | |||||||
| <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |  | ||||||
|     <Platform Condition=" '$(Platform)' == '' ">x86</Platform> |  | ||||||
|     <ProductVersion>8.0.50727</ProductVersion> |  | ||||||
|     <SchemaVersion>2.0</SchemaVersion> |  | ||||||
|     <ProjectGuid>{38A7408E-9446-4DEA-9F76-2A901AE5F16B}</ProjectGuid> |  | ||||||
|     <OutputType>Exe</OutputType> |  | ||||||
|     <RootNamespace>UpdateWarFile</RootNamespace> |  | ||||||
|     <AssemblyName>UpdateWarFile</AssemblyName> |  | ||||||
|     <WarningLevel>4</WarningLevel> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> |  | ||||||
|     <DebugSymbols>true</DebugSymbols> |  | ||||||
|     <DebugType>full</DebugType> |  | ||||||
|     <Optimize>false</Optimize> |  | ||||||
|     <OutputPath>bin\Debug\</OutputPath> |  | ||||||
|     <DefineConstants>DEBUG;TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> |  | ||||||
|     <DebugType>pdbonly</DebugType> |  | ||||||
|     <Optimize>true</Optimize> |  | ||||||
|     <OutputPath>bin\Release\</OutputPath> |  | ||||||
|     <DefineConstants>TRACE</DefineConstants> |  | ||||||
|   </PropertyGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Reference Include="System" /> |  | ||||||
|     <Reference Include="System.Data" /> |  | ||||||
|     <Reference Include="System.Xml" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <ItemGroup> |  | ||||||
|     <Compile Include="Program.jsl" /> |  | ||||||
|     <Compile Include="Properties\AssemblyInfo.jsl" /> |  | ||||||
|   </ItemGroup> |  | ||||||
|   <Import Project="$(MSBuildBinPath)\Microsoft.VisualJSharp.targets" /> |  | ||||||
|   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.  |  | ||||||
|        Other similar extension points exist, see Microsoft.Common.targets. |  | ||||||
|   <Target Name="BeforeBuild"> |  | ||||||
|   </Target> |  | ||||||
|   <Target Name="AfterBuild"> |  | ||||||
|   </Target> |  | ||||||
|   --> |  | ||||||
|   <PropertyGroup> |  | ||||||
|     <PostBuildEvent> |  | ||||||
|     </PostBuildEvent> |  | ||||||
|   </PropertyGroup> |  | ||||||
| </Project> |  | ||||||
| @@ -1,57 +1,42 @@ | |||||||
|  |  | ||||||
| Microsoft Visual Studio Solution File, Format Version 9.00 | Microsoft Visual Studio Solution File, Format Version 9.00 | ||||||
| # Visual Studio 2005 | # Visual Studio 2005 | ||||||
| Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "UpdateWarFile", "..\UpdateWarFile\UpdateWarFile.vjsproj", "{38A7408E-9446-4DEA-9F76-2A901AE5F16B}" |  | ||||||
| EndProject |  | ||||||
| Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "ClientKeystoreSetup", "..\ClientKeystoreSetup\ClientKeystoreSetup.vjsproj", "{89D5D921-A2E6-4ED9-A724-8C7DAAC09AC5}" |  | ||||||
| EndProject |  | ||||||
| Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "server-java_msi", "server-java_msi.vdproj", "{124289E1-BD76-485B-A779-C2372332D538}" | Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "server-java_msi", "server-java_msi.vdproj", "{124289E1-BD76-485B-A779-C2372332D538}" | ||||||
| 	ProjectSection(ProjectDependencies) = postProject |  | ||||||
| 		{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1} = {BED4F512-4A94-4EC2-9479-43AFA8E4EAE1} |  | ||||||
| 	EndProjectSection |  | ||||||
| EndProject | EndProject | ||||||
| Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "InitConfigFile", "..\InitConfigFile\InitConfigFile.vjsproj", "{E3528B18-D4A0-4604-B2C5-8EE36E094A40}" | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CommandLauncher", "..\CommandLauncher\CommandLauncher.vcproj", "{B52EF84A-D745-4637-9F59-DBD6E21C179C}" | ||||||
| EndProject |  | ||||||
| Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "ServerKeystoreSetup", "..\ServerKeystoreSetup\ServerKeystoreSetup.vjsproj", "{BAF8BCFB-1C97-4CA7-B03E-E588A67B21E0}" |  | ||||||
| EndProject |  | ||||||
| Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "MungeCryptoPropertiesFilePath", "..\MungeCryptoPropertiesFilePath\MungeCryptoPropertiesFilePath.vjsproj", "{75D8742F-4778-4978-9032-ED9649BA402D}" |  | ||||||
| EndProject |  | ||||||
| Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "SetupAsWindowsService", "..\SetupAsWindowsService\SetupAsWindowsService.vjsproj", "{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1}" |  | ||||||
| EndProject | EndProject | ||||||
| Global | Global | ||||||
| 	GlobalSection(SolutionConfigurationPlatforms) = preSolution | 	GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||||||
|  | 		Debug|Mixed Platforms = Debug|Mixed Platforms | ||||||
|  | 		Debug|Win32 = Debug|Win32 | ||||||
| 		Debug|x86 = Debug|x86 | 		Debug|x86 = Debug|x86 | ||||||
|  | 		Release|Mixed Platforms = Release|Mixed Platforms | ||||||
|  | 		Release|Win32 = Release|Win32 | ||||||
| 		Release|x86 = Release|x86 | 		Release|x86 = Release|x86 | ||||||
| 	EndGlobalSection | 	EndGlobalSection | ||||||
| 	GlobalSection(ProjectConfigurationPlatforms) = postSolution | 	GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||||||
| 		{38A7408E-9446-4DEA-9F76-2A901AE5F16B}.Debug|x86.ActiveCfg = Debug|x86 | 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|Mixed Platforms.ActiveCfg = Debug | ||||||
| 		{38A7408E-9446-4DEA-9F76-2A901AE5F16B}.Debug|x86.Build.0 = Debug|x86 | 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|Mixed Platforms.Build.0 = Debug | ||||||
| 		{38A7408E-9446-4DEA-9F76-2A901AE5F16B}.Release|x86.ActiveCfg = Release|x86 | 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|Win32.ActiveCfg = Debug | ||||||
| 		{38A7408E-9446-4DEA-9F76-2A901AE5F16B}.Release|x86.Build.0 = Release|x86 | 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|Win32.Build.0 = Debug | ||||||
| 		{89D5D921-A2E6-4ED9-A724-8C7DAAC09AC5}.Debug|x86.ActiveCfg = Debug|x86 |  | ||||||
| 		{89D5D921-A2E6-4ED9-A724-8C7DAAC09AC5}.Debug|x86.Build.0 = Debug|x86 |  | ||||||
| 		{89D5D921-A2E6-4ED9-A724-8C7DAAC09AC5}.Release|x86.ActiveCfg = Release|x86 |  | ||||||
| 		{89D5D921-A2E6-4ED9-A724-8C7DAAC09AC5}.Release|x86.Build.0 = Release|x86 |  | ||||||
| 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|x86.ActiveCfg = Debug | 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|x86.ActiveCfg = Debug | ||||||
| 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|x86.Build.0 = Debug | 		{124289E1-BD76-485B-A779-C2372332D538}.Debug|x86.Build.0 = Debug | ||||||
|  | 		{124289E1-BD76-485B-A779-C2372332D538}.Release|Mixed Platforms.ActiveCfg = Release | ||||||
|  | 		{124289E1-BD76-485B-A779-C2372332D538}.Release|Mixed Platforms.Build.0 = Release | ||||||
|  | 		{124289E1-BD76-485B-A779-C2372332D538}.Release|Win32.ActiveCfg = Release | ||||||
|  | 		{124289E1-BD76-485B-A779-C2372332D538}.Release|Win32.Build.0 = Release | ||||||
| 		{124289E1-BD76-485B-A779-C2372332D538}.Release|x86.ActiveCfg = Release | 		{124289E1-BD76-485B-A779-C2372332D538}.Release|x86.ActiveCfg = Release | ||||||
| 		{124289E1-BD76-485B-A779-C2372332D538}.Release|x86.Build.0 = Release | 		{124289E1-BD76-485B-A779-C2372332D538}.Release|x86.Build.0 = Release | ||||||
| 		{E3528B18-D4A0-4604-B2C5-8EE36E094A40}.Debug|x86.ActiveCfg = Debug|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 | ||||||
| 		{E3528B18-D4A0-4604-B2C5-8EE36E094A40}.Debug|x86.Build.0 = Debug|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Debug|Mixed Platforms.Build.0 = Debug|Win32 | ||||||
| 		{E3528B18-D4A0-4604-B2C5-8EE36E094A40}.Release|x86.ActiveCfg = Release|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Debug|Win32.ActiveCfg = Debug|Win32 | ||||||
| 		{E3528B18-D4A0-4604-B2C5-8EE36E094A40}.Release|x86.Build.0 = Release|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Debug|Win32.Build.0 = Debug|Win32 | ||||||
| 		{BAF8BCFB-1C97-4CA7-B03E-E588A67B21E0}.Debug|x86.ActiveCfg = Debug|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Debug|x86.ActiveCfg = Debug|Win32 | ||||||
| 		{BAF8BCFB-1C97-4CA7-B03E-E588A67B21E0}.Debug|x86.Build.0 = Debug|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Release|Mixed Platforms.ActiveCfg = Release|Win32 | ||||||
| 		{BAF8BCFB-1C97-4CA7-B03E-E588A67B21E0}.Release|x86.ActiveCfg = Release|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Release|Mixed Platforms.Build.0 = Release|Win32 | ||||||
| 		{BAF8BCFB-1C97-4CA7-B03E-E588A67B21E0}.Release|x86.Build.0 = Release|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Release|Win32.ActiveCfg = Release|Win32 | ||||||
| 		{75D8742F-4778-4978-9032-ED9649BA402D}.Debug|x86.ActiveCfg = Debug|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Release|Win32.Build.0 = Release|Win32 | ||||||
| 		{75D8742F-4778-4978-9032-ED9649BA402D}.Debug|x86.Build.0 = Debug|x86 | 		{B52EF84A-D745-4637-9F59-DBD6E21C179C}.Release|x86.ActiveCfg = Release|Win32 | ||||||
| 		{75D8742F-4778-4978-9032-ED9649BA402D}.Release|x86.ActiveCfg = Release|x86 |  | ||||||
| 		{75D8742F-4778-4978-9032-ED9649BA402D}.Release|x86.Build.0 = Release|x86 |  | ||||||
| 		{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1}.Debug|x86.ActiveCfg = Debug|x86 |  | ||||||
| 		{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1}.Debug|x86.Build.0 = Debug|x86 |  | ||||||
| 		{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1}.Release|x86.ActiveCfg = Release|x86 |  | ||||||
| 		{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1}.Release|x86.Build.0 = Release|x86 |  | ||||||
| 	EndGlobalSection | 	EndGlobalSection | ||||||
| 	GlobalSection(SolutionProperties) = preSolution | 	GlobalSection(SolutionProperties) = preSolution | ||||||
| 		HideSolutionNode = FALSE | 		HideSolutionNode = FALSE | ||||||
|   | |||||||
| @@ -33,6 +33,12 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|  |         "MsmKey" = "8:_1B3A4C8191564F31884500B4CE426618" | ||||||
|  |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|  |         "MsmSig" = "8:_UNDEFINED" | ||||||
|  |         } | ||||||
|  |         "Entry" | ||||||
|  |         { | ||||||
|         "MsmKey" = "8:_1B40D00F3F624D2ABF0631F7D71EDB4B" |         "MsmKey" = "8:_1B40D00F3F624D2ABF0631F7D71EDB4B" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -45,12 +51,6 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_24EE971158ED49B38B0773EA58C33E6F" |  | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_26775E30E3134CB48E98A16974BAF443" |         "MsmKey" = "8:_26775E30E3134CB48E98A16974BAF443" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -63,12 +63,6 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_33BD777FB0CA488F96B43C8A9D0D1638" |  | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_4023D519AC024666B875F39FEE70302D" |         "MsmKey" = "8:_4023D519AC024666B875F39FEE70302D" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -93,6 +87,12 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|  |         "MsmKey" = "8:_496687043FE94A48AC4C31E22097E863" | ||||||
|  |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|  |         "MsmSig" = "8:_UNDEFINED" | ||||||
|  |         } | ||||||
|  |         "Entry" | ||||||
|  |         { | ||||||
|         "MsmKey" = "8:_4BC8F27506B949C887592E0802F41093" |         "MsmKey" = "8:_4BC8F27506B949C887592E0802F41093" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -111,6 +111,12 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|  |         "MsmKey" = "8:_5B105FED430E4D998914B3562D4A8EA1" | ||||||
|  |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|  |         "MsmSig" = "8:_UNDEFINED" | ||||||
|  |         } | ||||||
|  |         "Entry" | ||||||
|  |         { | ||||||
|         "MsmKey" = "8:_6B0A5DA947344EF3998B5EFC0F591F76" |         "MsmKey" = "8:_6B0A5DA947344EF3998B5EFC0F591F76" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -171,12 +177,6 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_9CDF186732904E43A4D641CE90A04327" |         "MsmKey" = "8:_9CDF186732904E43A4D641CE90A04327" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -189,12 +189,6 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_A76F97BE8A8049FEB37D29E540FBE2F9" |  | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_A775E68A569849B29B4C803FDC954E9B" |         "MsmKey" = "8:_A775E68A569849B29B4C803FDC954E9B" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -207,48 +201,18 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|         "OwnerKey" = "8:_24EE971158ED49B38B0773EA58C33E6F" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|         "OwnerKey" = "8:_33BD777FB0CA488F96B43C8A9D0D1638" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|         "OwnerKey" = "8:_F483B367258C4C0196BA64210B2F9050" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|         "OwnerKey" = "8:_E9000CEAF5CD467E91E857EE453F7775" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|         "OwnerKey" = "8:_A76F97BE8A8049FEB37D29E540FBE2F9" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|         "OwnerKey" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_B29E25690B014C0B846CFC4698D08846" |         "MsmKey" = "8:_B29E25690B014C0B846CFC4698D08846" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|  |         "MsmKey" = "8:_B33CF4351D5E427D9F3457929AFB1CFE" | ||||||
|  |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|  |         "MsmSig" = "8:_UNDEFINED" | ||||||
|  |         } | ||||||
|  |         "Entry" | ||||||
|  |         { | ||||||
|         "MsmKey" = "8:_B785154416ED4BB7A00CE5860A9FDBF8" |         "MsmKey" = "8:_B785154416ED4BB7A00CE5860A9FDBF8" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -267,6 +231,18 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|  |         "MsmKey" = "8:_C7412C71954041018568B8F728496265" | ||||||
|  |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|  |         "MsmSig" = "8:_UNDEFINED" | ||||||
|  |         } | ||||||
|  |         "Entry" | ||||||
|  |         { | ||||||
|  |         "MsmKey" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|  |         "MsmSig" = "8:_UNDEFINED" | ||||||
|  |         } | ||||||
|  |         "Entry" | ||||||
|  |         { | ||||||
|         "MsmKey" = "8:_D49BFC7330DD49F0BDE8F9C2EF409405" |         "MsmKey" = "8:_D49BFC7330DD49F0BDE8F9C2EF409405" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -309,12 +285,6 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_E9000CEAF5CD467E91E857EE453F7775" |  | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_F172228591AC4B2589FE3890572BD4EA" |         "MsmKey" = "8:_F172228591AC4B2589FE3890572BD4EA" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -327,12 +297,6 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_F483B367258C4C0196BA64210B2F9050" |  | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_FC13F305B3594CB983C4CA14BDC14B4A" |         "MsmKey" = "8:_FC13F305B3594CB983C4CA14BDC14B4A" | ||||||
|         "OwnerKey" = "8:_UNDEFINED" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
| @@ -351,44 +315,8 @@ | |||||||
|         } |         } | ||||||
|         "Entry" |         "Entry" | ||||||
|         { |         { | ||||||
|         "MsmKey" = "8:_UNDEFINED" |         "MsmKey" = "8:_FFF1B42279C84C628F41C191D5DBD50F" | ||||||
|         "OwnerKey" = "8:_24EE971158ED49B38B0773EA58C33E6F" |         "OwnerKey" = "8:_UNDEFINED" | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_UNDEFINED" |  | ||||||
|         "OwnerKey" = "8:_33BD777FB0CA488F96B43C8A9D0D1638" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_UNDEFINED" |  | ||||||
|         "OwnerKey" = "8:_F483B367258C4C0196BA64210B2F9050" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_UNDEFINED" |  | ||||||
|         "OwnerKey" = "8:_E9000CEAF5CD467E91E857EE453F7775" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_UNDEFINED" |  | ||||||
|         "OwnerKey" = "8:_A76F97BE8A8049FEB37D29E540FBE2F9" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_UNDEFINED" |  | ||||||
|         "OwnerKey" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |  | ||||||
|         } |  | ||||||
|         "Entry" |  | ||||||
|         { |  | ||||||
|         "MsmKey" = "8:_UNDEFINED" |  | ||||||
|         "OwnerKey" = "8:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|         "MsmSig" = "8:_UNDEFINED" |         "MsmSig" = "8:_UNDEFINED" | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| @@ -420,7 +348,7 @@ | |||||||
|                 { |                 { | ||||||
|                     "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.2.0" |                     "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.2.0" | ||||||
|                     { |                     { | ||||||
|                     "Name" = "8:Microsoft .NET Framework 2.0" |                     "Name" = "8:.NET Framework 2.0" | ||||||
|                     "ProductCode" = "8:Microsoft.Net.Framework.2.0" |                     "ProductCode" = "8:Microsoft.Net.Framework.2.0" | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
| @@ -458,213 +386,199 @@ | |||||||
|     { |     { | ||||||
|         "CustomAction" |         "CustomAction" | ||||||
|         { |         { | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_2A9CB5BF3B0D41BBABDB8B889C63493A" |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_0649C6635880499891B6B5E745610A71" | ||||||
|             { |             { | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (jaas.conf)" |             "Name" = "8:Primary Output from CommandLauncher (Active) (InitConfigFile - CasaAuthTokenSettingsEditor.bat)" | ||||||
|             "Condition" = "8:" |             "Condition" = "8:" | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|             "FileType" = "3:2" |             "FileType" = "3:2" | ||||||
|             "InstallAction" = "3:1" |             "InstallAction" = "3:1" | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\jaas.conf output=[TARGETDIR]ats\\etc\\svc\\jaas.conf" |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaAuthTokenSettingsEditor.bat output=[TARGETDIR]ats\\bin\\CasaAuthTokenSettingsEditor.bat" | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:7" |  | ||||||
|             "Identifier" = "8:_D5524CA6_C0E8_4F38_AD79_08EF4DC7C653" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_5C7B764EE14E4F75B569752C2BE22170" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (crypto.properties) Must occur prior to MungeCryptoPropertiesFilePath" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] template=[TARGETDIR]ats\\etc\\svc\\templates\\crypto.properties.template output=[TARGETDIR]ats\\etc\\svc\\templates\\crypto.properties.munge" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:4" |  | ||||||
|             "Identifier" = "8:_3A26A679_4460_4A81_A20B_9566DBAC0A3E" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_63B9A50F009D43DEA301F578AE712355" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (CasaAuthPolicyEditor.bat)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaAuthPolicyEditor.bat output=[TARGETDIR]ats\\bin\\CasaAuthPolicyEditor.bat" |  | ||||||
|             "EntryPoint" = "8:" |             "EntryPoint" = "8:" | ||||||
|             "Sequence" = "3:10" |             "Sequence" = "3:10" | ||||||
|             "Identifier" = "8:_5BF5119E_CA43_4187_8AE0_4B8D98A2C3AF" |             "Identifier" = "8:_C9280ED9_FF85_41A1_A63F_1D5A4DE7F708" | ||||||
|             "InstallerClass" = "11:FALSE" |             "InstallerClass" = "11:FALSE" | ||||||
|             "CustomActionData" = "8:" |             "CustomActionData" = "8:" | ||||||
|             } |             } | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_641A2854068F40CA97BB2570FCBD8646" |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_0D67D4E2DF614063A6E484DA7634504E" | ||||||
|             { |             { | ||||||
|             "Name" = "8:Primary output from SetupAsWindowsService (Active)" |             "Name" = "8:Primary Output from CommandLauncher (Active) (ServerKeystoreSetup)" | ||||||
|             "Condition" = "8:" |             "Condition" = "8:" | ||||||
|             "Object" = "8:_33BD777FB0CA488F96B43C8A9D0D1638" |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|             "FileType" = "3:2" |             "FileType" = "3:2" | ||||||
|             "InstallAction" = "3:1" |             "InstallAction" = "3:1" | ||||||
|             "Arguments" = "8:installdir=[TARGETDIR] propertyfile=[PROPERTYFILE]" |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" ServerKeystoreSetup installdir=[TARGETDIR] propertyfile=[PROPERTYFILE]" | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:15" |  | ||||||
|             "Identifier" = "8:_388E4C75_9DA9_47B5_9835_364652FF75A5" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_7224ECF911704A2D945FC6A1E3778E98" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active)  (CasaIdenTokenSettingsEditor.bat)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaIdenTokenSettingsEditor.bat output=[TARGETDIR]ats\\bin\\CasaIdenTokenSettingsEditor.bat" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:12" |  | ||||||
|             "Identifier" = "8:_CF4E38AE_8DA5_447D_9330_0DD26864178E" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_72B63E81413D4F81960D5DFEDB7E5CAE" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (server.xml)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] template=[TARGETDIR]ats\\etc\\svc\\templates\\server-sun.xml output=[TARGETDIR]ats\\catalinabase\\conf\\server.xml" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:3" |  | ||||||
|             "Identifier" = "8:_04B7F2FF_ADB6_4EF9_B293_4673323CB43E" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_75778738D12D4F449385455F65978074" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (svc.setting)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\svc.settings output=[TARGETDIR]ats\\etc\\svc\\svc.settings IAREALMS_FILE_PATH=[TARGETDIR]ats\\etc\\svc\\iaRealms.xml" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:14" |  | ||||||
|             "Identifier" = "8:_DF0105D8_6D43_4643_9E4C_36F9131DCBBA" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_7AC32F7EF2A5442D93B9DB5FEEA4F407" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (shutdown.bat)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\shutdown.bat output=[TARGETDIR]ats\\bin\\shutdown.bat" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:9" |  | ||||||
|             "Identifier" = "8:_783B8556_08E3_4304_A23D_BE54FBC69705" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_8841B5390752441387C9D9694DEFAB92" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (startup.bat)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\startup.bat output=[TARGETDIR]ats\\bin\\startup.bat" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:8" |  | ||||||
|             "Identifier" = "8:_A652A5B9_DE90_418E_9E3E_C803D9496C26" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_8D7D11687B9649C5ACC8E2C82086070A" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from MungeCryptoPropertiesFilePath (Active) Must occur after InitConfigFile for crypto.properties and prior to UpdateWarFile" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_A76F97BE8A8049FEB37D29E540FBE2F9" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:input=[TARGETDIR]ats\\etc\\svc\\templates\\crypto.properties.munge output=[TARGETDIR]ats\\etc\\svc\\templates\\crypto.properties" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:5" |  | ||||||
|             "Identifier" = "8:_7C957A08_A5A9_4DB1_A599_90DA693A50C9" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_9489DC4664D24B38A96DFB2595793753" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from UpdateWarFile (Active) Must occur after MungeCryptoPropertiesFilePath" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_24EE971158ED49B38B0773EA58C33E6F" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR]" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:6" |  | ||||||
|             "Identifier" = "8:_8E85EC88_AD21_4692_8AD4_501FF00933C0" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_A2BF9CF795C349B29F17C4AAB96C1152" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (CasaSvcSettingsEditor.bat)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaSvcSettingsEditor.bat output=[TARGETDIR]ats\\bin\\CasaSvcSettingsEditor.bat" |  | ||||||
|             "EntryPoint" = "8:" |  | ||||||
|             "Sequence" = "3:13" |  | ||||||
|             "Identifier" = "8:_B3396B9F_264C_447E_86E7_18E989866C40" |  | ||||||
|             "InstallerClass" = "11:FALSE" |  | ||||||
|             "CustomActionData" = "8:" |  | ||||||
|             } |  | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_A647641D8B3F49BB9C8668B6D4654E56" |  | ||||||
|             { |  | ||||||
|             "Name" = "8:Primary output from ServerKeystoreSetup (Active)" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Object" = "8:_F483B367258C4C0196BA64210B2F9050" |  | ||||||
|             "FileType" = "3:2" |  | ||||||
|             "InstallAction" = "3:1" |  | ||||||
|             "Arguments" = "8:installdir=[TARGETDIR] propertyfile=[PROPERTYFILE]" |  | ||||||
|             "EntryPoint" = "8:" |             "EntryPoint" = "8:" | ||||||
|             "Sequence" = "3:1" |             "Sequence" = "3:1" | ||||||
|             "Identifier" = "8:_F7AED41A_0CC4_4E3F_9788_07B7A2111BB6" |             "Identifier" = "8:_95FF5D11_14EF_4F9B_8F58_CE64CB7D4B8C" | ||||||
|             "InstallerClass" = "11:FALSE" |             "InstallerClass" = "11:FALSE" | ||||||
|             "CustomActionData" = "8:" |             "CustomActionData" = "8:" | ||||||
|             } |             } | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_F0FA873BBF61452DA2094B90463F0398" |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_1342D0740E9D4057A7A52F213A87522E" | ||||||
|             { |             { | ||||||
|             "Name" = "8:Primary output from ClientKeystoreSetup (Active)" |             "Name" = "8:Primary Output from CommandLauncher (Active) (InitConfigFile - shutdown.bat)" | ||||||
|             "Condition" = "8:" |             "Condition" = "8:" | ||||||
|             "Object" = "8:_E9000CEAF5CD467E91E857EE453F7775" |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|             "FileType" = "3:2" |             "FileType" = "3:2" | ||||||
|             "InstallAction" = "3:1" |             "InstallAction" = "3:1" | ||||||
|             "Arguments" = "8:installdir=[TARGETDIR] propertyfile=[PROPERTYFILE]" |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\"  InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\shutdown.bat output=[TARGETDIR]ats\\bin\\shutdown.bat" | ||||||
|             "EntryPoint" = "8:" |             "EntryPoint" = "8:" | ||||||
|             "Sequence" = "3:2" |             "Sequence" = "3:8" | ||||||
|             "Identifier" = "8:_9528EA85_BC6A_4C4B_8815_486C867778EB" |             "Identifier" = "8:_D5A5CC5A_E7DE_4A66_8B8B_AC62B1F0E802" | ||||||
|             "InstallerClass" = "11:FALSE" |             "InstallerClass" = "11:FALSE" | ||||||
|             "CustomActionData" = "8:" |             "CustomActionData" = "8:" | ||||||
|             } |             } | ||||||
|             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_F7E003096E2B4D808366302D130C41DD" |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_18232292AAE24AC8890F4EDC2C6CA303" | ||||||
|             { |             { | ||||||
|             "Name" = "8:Primary output from InitConfigFile (Active) (CasaAuthTokenSettingsEditor.bat)" |             "Name" = "8:Primary Output from CommandLauncher (Active) (InitConfigFile - svc.setting)" | ||||||
|             "Condition" = "8:" |             "Condition" = "8:" | ||||||
|             "Object" = "8:_9BFD505E12784C9A97B3D567C0BEB8C1" |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|             "FileType" = "3:2" |             "FileType" = "3:2" | ||||||
|             "InstallAction" = "3:1" |             "InstallAction" = "3:1" | ||||||
|             "Arguments" = "8:ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[TARGETDIR]install.properties  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaAuthTokenSettingsEditor.bat output=[TARGETDIR]ats\\bin\\CasaAuthTokenSettingsEditor.bat" |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\svc.settings output=[TARGETDIR]ats\\etc\\svc\\svc.settings" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:13" | ||||||
|  |             "Identifier" = "8:_D0E0C7AD_FE1B_42BC_84CB_367FF7DA3462" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_29F602AEB0EE49038CF6F2FCCAB91D13" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (UpdateWarFile) Must occur after MungeCryptoPropertiesFilePath" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" UpdateWarFile ATS_INSTALL_DIR=[TARGETDIR]" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:6" | ||||||
|  |             "Identifier" = "8:_EE7DCFDC_5F7D_4CB5_A0CF_94F7FA99D5E3" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_4C26B01B6C7D45C1B87201E4021E5C34" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (InitConfigFile - CasaSvcSettingsEditor.bat)" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaSvcSettingsEditor.bat output=[TARGETDIR]ats\\bin\\CasaSvcSettingsEditor.bat" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:12" | ||||||
|  |             "Identifier" = "8:_0712449A_9964_46BE_B561_3D920BEB6858" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_86FFE7CBBCAE482B943C1345B8A19463" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active)  (InitConfigFile - crypto.properties) Must occur prior to MungeCryptoPropertiesFilePath" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaAuthTokenSettingsEditor.bat output=[TARGETDIR]ats\\bin\\CasaAuthTokenSettingsEditor.bat" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:4" | ||||||
|  |             "Identifier" = "8:_DCF56A01_EC29_4577_BF02_98B5C0530733" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_963A40E37B0B4C4D88DF53E8857DFC55" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active)  (InitConfigFile - CasaIdenTokenSettingsEditor.bat)" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaIdenTokenSettingsEditor.bat output=[TARGETDIR]ats\\bin\\CasaIdenTokenSettingsEditor.bat" | ||||||
|             "EntryPoint" = "8:" |             "EntryPoint" = "8:" | ||||||
|             "Sequence" = "3:11" |             "Sequence" = "3:11" | ||||||
|             "Identifier" = "8:_18FC0D9A_DD2F_4D55_BED7_6D85A053D2E1" |             "Identifier" = "8:_3A733ACF_EEB9_4CB3_AC1F_1BE0D2754801" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_A8313CF92A734AF496D20732762B3AC8" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (InitConfigFile - CasaAuthPolicyEditor.bat)" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\CasaAuthPolicyEditor.bat output=[TARGETDIR]ats\\bin\\CasaAuthPolicyEditor.bat" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:9" | ||||||
|  |             "Identifier" = "8:_A0F2A4A3_2CAF_4930_9CA7_394EBED23657" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_BA6223F1398F4FFDAAB8418B6CBA7254" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (SetupAsWindowsService)" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\"  SetupAsWindowsService installdir=[TARGETDIR] propertyfile=[PROPERTYFILE]" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:14" | ||||||
|  |             "Identifier" = "8:_7A98817C_F65F_4FA3_86D5_1CA9941CB2ED" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_BC29F1229F604A44B70AC43EEE347C89" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (MungeCryptoPropertiesFilePath) Must occur after InitConfigFile for crypto.properties and prior to UpdateWarFile" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" MungeCryptoPropertiesFilePath input=[TARGETDIR]ats\\etc\\svc\\templates\\crypto.properties.munge output=[TARGETDIR]ats\\etc\\svc\\templates\\crypto.properties" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:5" | ||||||
|  |             "Identifier" = "8:_0DF5E5EA_0E59_4C5A_89E9_8E215C5B65EE" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_CF3F745785C74730B9C621D7CA4601BE" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (ClientKeystoreSetup)" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" ClientKeystoreSetup installdir=[TARGETDIR] propertyfile=[PROPERTYFILE]" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:2" | ||||||
|  |             "Identifier" = "8:_23EDDD01_570B_4D80_BFE1_F1506C8BE5D3" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_E0F0B5DC44B644FEA323F054D95632EA" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (InitConfigFile - startup.bat)" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\"  InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] propertyfile=[PROPERTYFILE]  template=[TARGETDIR]ats\\etc\\svc\\templates\\startup.bat output=[TARGETDIR]ats\\bin\\startup.bat" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:7" | ||||||
|  |             "Identifier" = "8:_CA5EFB45_9474_4F04_93D5_67848CE9D58A" | ||||||
|  |             "InstallerClass" = "11:FALSE" | ||||||
|  |             "CustomActionData" = "8:" | ||||||
|  |             } | ||||||
|  |             "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_E7EF78190F31478F894EC953D6954F80" | ||||||
|  |             { | ||||||
|  |             "Name" = "8:Primary Output from CommandLauncher (Active) (InitConfigFile - server.xml)" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Object" = "8:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|  |             "FileType" = "3:2" | ||||||
|  |             "InstallAction" = "3:1" | ||||||
|  |             "Arguments" = "8:\"[ATS_JAVA_EXE]\" -cp \"[TARGETDIR]ats\\bin\" InitConfigFile ATS_INSTALL_DIR=[TARGETDIR] template=[TARGETDIR]ats\\etc\\svc\\templates\\server-sun.xml output=[TARGETDIR]ats\\catalinabase\\conf\\server.xml" | ||||||
|  |             "EntryPoint" = "8:" | ||||||
|  |             "Sequence" = "3:3" | ||||||
|  |             "Identifier" = "8:_81520F3E_2A16_41C2_8617_0E2A7AE15DC3" | ||||||
|             "InstallerClass" = "11:FALSE" |             "InstallerClass" = "11:FALSE" | ||||||
|             "CustomActionData" = "8:" |             "CustomActionData" = "8:" | ||||||
|             } |             } | ||||||
| @@ -751,6 +665,26 @@ | |||||||
|             "IsDependency" = "11:FALSE" |             "IsDependency" = "11:FALSE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|  |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1B3A4C8191564F31884500B4CE426618" | ||||||
|  |             { | ||||||
|  |             "SourcePath" = "8:..\\ClientKeystoreSetup\\bin\\ClientKeystoreSetup.class" | ||||||
|  |             "TargetName" = "8:ClientKeystoreSetup.class" | ||||||
|  |             "Tag" = "8:" | ||||||
|  |             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Transitive" = "11:FALSE" | ||||||
|  |             "Vital" = "11:TRUE" | ||||||
|  |             "ReadOnly" = "11:FALSE" | ||||||
|  |             "Hidden" = "11:FALSE" | ||||||
|  |             "System" = "11:FALSE" | ||||||
|  |             "Permanent" = "11:FALSE" | ||||||
|  |             "SharedLegacy" = "11:FALSE" | ||||||
|  |             "PackageAs" = "3:1" | ||||||
|  |             "Register" = "3:1" | ||||||
|  |             "Exclude" = "11:FALSE" | ||||||
|  |             "IsDependency" = "11:FALSE" | ||||||
|  |             "IsolateTo" = "8:" | ||||||
|  |             } | ||||||
|             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1B40D00F3F624D2ABF0631F7D71EDB4B" |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1B40D00F3F624D2ABF0631F7D71EDB4B" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\..\\..\\Svc\\external\\axis-ant.jar" |             "SourcePath" = "8:..\\..\\..\\Svc\\external\\axis-ant.jar" | ||||||
| @@ -911,6 +845,26 @@ | |||||||
|             "IsDependency" = "11:FALSE" |             "IsDependency" = "11:FALSE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|  |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_496687043FE94A48AC4C31E22097E863" | ||||||
|  |             { | ||||||
|  |             "SourcePath" = "8:..\\ServerKeystoreSetup\\bin\\ServerKeystoreSetup.class" | ||||||
|  |             "TargetName" = "8:ServerKeystoreSetup.class" | ||||||
|  |             "Tag" = "8:" | ||||||
|  |             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Transitive" = "11:FALSE" | ||||||
|  |             "Vital" = "11:TRUE" | ||||||
|  |             "ReadOnly" = "11:FALSE" | ||||||
|  |             "Hidden" = "11:FALSE" | ||||||
|  |             "System" = "11:FALSE" | ||||||
|  |             "Permanent" = "11:FALSE" | ||||||
|  |             "SharedLegacy" = "11:FALSE" | ||||||
|  |             "PackageAs" = "3:1" | ||||||
|  |             "Register" = "3:1" | ||||||
|  |             "Exclude" = "11:FALSE" | ||||||
|  |             "IsDependency" = "11:FALSE" | ||||||
|  |             "IsolateTo" = "8:" | ||||||
|  |             } | ||||||
|             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_4BC8F27506B949C887592E0802F41093" |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_4BC8F27506B949C887592E0802F41093" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\..\\..\\Svc\\templates\\startup.bat" |             "SourcePath" = "8:..\\..\\..\\Svc\\templates\\startup.bat" | ||||||
| @@ -971,6 +925,26 @@ | |||||||
|             "IsDependency" = "11:FALSE" |             "IsDependency" = "11:FALSE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|  |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_5B105FED430E4D998914B3562D4A8EA1" | ||||||
|  |             { | ||||||
|  |             "SourcePath" = "8:..\\UpdateWarFile\\bin\\UpdateWarFile.class" | ||||||
|  |             "TargetName" = "8:UpdateWarFile.class" | ||||||
|  |             "Tag" = "8:" | ||||||
|  |             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Transitive" = "11:FALSE" | ||||||
|  |             "Vital" = "11:TRUE" | ||||||
|  |             "ReadOnly" = "11:FALSE" | ||||||
|  |             "Hidden" = "11:FALSE" | ||||||
|  |             "System" = "11:FALSE" | ||||||
|  |             "Permanent" = "11:FALSE" | ||||||
|  |             "SharedLegacy" = "11:FALSE" | ||||||
|  |             "PackageAs" = "3:1" | ||||||
|  |             "Register" = "3:1" | ||||||
|  |             "Exclude" = "11:FALSE" | ||||||
|  |             "IsDependency" = "11:FALSE" | ||||||
|  |             "IsolateTo" = "8:" | ||||||
|  |             } | ||||||
|             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6B0A5DA947344EF3998B5EFC0F591F76" |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_6B0A5DA947344EF3998B5EFC0F591F76" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\..\\..\\Svc\\templates\\CasaIdenTokenSettingsEditor.bat" |             "SourcePath" = "8:..\\..\\..\\Svc\\templates\\CasaIdenTokenSettingsEditor.bat" | ||||||
| @@ -1271,6 +1245,26 @@ | |||||||
|             "IsDependency" = "11:FALSE" |             "IsDependency" = "11:FALSE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|  |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B33CF4351D5E427D9F3457929AFB1CFE" | ||||||
|  |             { | ||||||
|  |             "SourcePath" = "8:..\\SetupAsWindowsService\\bin\\SetupAsWindowsService.class" | ||||||
|  |             "TargetName" = "8:SetupAsWindowsService.class" | ||||||
|  |             "Tag" = "8:" | ||||||
|  |             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Transitive" = "11:FALSE" | ||||||
|  |             "Vital" = "11:TRUE" | ||||||
|  |             "ReadOnly" = "11:FALSE" | ||||||
|  |             "Hidden" = "11:FALSE" | ||||||
|  |             "System" = "11:FALSE" | ||||||
|  |             "Permanent" = "11:FALSE" | ||||||
|  |             "SharedLegacy" = "11:FALSE" | ||||||
|  |             "PackageAs" = "3:1" | ||||||
|  |             "Register" = "3:1" | ||||||
|  |             "Exclude" = "11:FALSE" | ||||||
|  |             "IsDependency" = "11:FALSE" | ||||||
|  |             "IsolateTo" = "8:" | ||||||
|  |             } | ||||||
|             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B785154416ED4BB7A00CE5860A9FDBF8" |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B785154416ED4BB7A00CE5860A9FDBF8" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\..\\..\\Svc\\build\\CasaSvcSettingsEditor.jar" |             "SourcePath" = "8:..\\..\\..\\Svc\\build\\CasaSvcSettingsEditor.jar" | ||||||
| @@ -1331,6 +1325,26 @@ | |||||||
|             "IsDependency" = "11:FALSE" |             "IsDependency" = "11:FALSE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|  |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C7412C71954041018568B8F728496265" | ||||||
|  |             { | ||||||
|  |             "SourcePath" = "8:..\\MungeCryptoPropertiesFilePath\\bin\\MungeCryptoPropertiesFilePath.class" | ||||||
|  |             "TargetName" = "8:MungeCryptoPropertiesFilePath.class" | ||||||
|  |             "Tag" = "8:" | ||||||
|  |             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Transitive" = "11:FALSE" | ||||||
|  |             "Vital" = "11:TRUE" | ||||||
|  |             "ReadOnly" = "11:FALSE" | ||||||
|  |             "Hidden" = "11:FALSE" | ||||||
|  |             "System" = "11:FALSE" | ||||||
|  |             "Permanent" = "11:FALSE" | ||||||
|  |             "SharedLegacy" = "11:FALSE" | ||||||
|  |             "PackageAs" = "3:1" | ||||||
|  |             "Register" = "3:1" | ||||||
|  |             "Exclude" = "11:FALSE" | ||||||
|  |             "IsDependency" = "11:FALSE" | ||||||
|  |             "IsolateTo" = "8:" | ||||||
|  |             } | ||||||
|             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D49BFC7330DD49F0BDE8F9C2EF409405" |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D49BFC7330DD49F0BDE8F9C2EF409405" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\..\\..\\Svc\\external\\wss4j-1.5.0.jar" |             "SourcePath" = "8:..\\..\\..\\Svc\\external\\wss4j-1.5.0.jar" | ||||||
| @@ -1571,6 +1585,26 @@ | |||||||
|             "IsDependency" = "11:FALSE" |             "IsDependency" = "11:FALSE" | ||||||
|             "IsolateTo" = "8:" |             "IsolateTo" = "8:" | ||||||
|             } |             } | ||||||
|  |             "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_FFF1B42279C84C628F41C191D5DBD50F" | ||||||
|  |             { | ||||||
|  |             "SourcePath" = "8:..\\InitConfigFile\\bin\\InitConfigFile.class" | ||||||
|  |             "TargetName" = "8:InitConfigFile.class" | ||||||
|  |             "Tag" = "8:" | ||||||
|  |             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" | ||||||
|  |             "Condition" = "8:" | ||||||
|  |             "Transitive" = "11:FALSE" | ||||||
|  |             "Vital" = "11:TRUE" | ||||||
|  |             "ReadOnly" = "11:FALSE" | ||||||
|  |             "Hidden" = "11:FALSE" | ||||||
|  |             "System" = "11:FALSE" | ||||||
|  |             "Permanent" = "11:FALSE" | ||||||
|  |             "SharedLegacy" = "11:FALSE" | ||||||
|  |             "PackageAs" = "3:1" | ||||||
|  |             "Register" = "3:1" | ||||||
|  |             "Exclude" = "11:FALSE" | ||||||
|  |             "IsDependency" = "11:FALSE" | ||||||
|  |             "IsolateTo" = "8:" | ||||||
|  |             } | ||||||
|         } |         } | ||||||
|         "FileType" |         "FileType" | ||||||
|         { |         { | ||||||
| @@ -1920,7 +1954,7 @@ | |||||||
|         "Name" = "8:Microsoft Visual Studio" |         "Name" = "8:Microsoft Visual Studio" | ||||||
|         "ProductName" = "8:server-java_msi" |         "ProductName" = "8:server-java_msi" | ||||||
|         "ProductCode" = "8:{A8C0CB21-B404-4B79-B076-ECA9AB23D80A}" |         "ProductCode" = "8:{A8C0CB21-B404-4B79-B076-ECA9AB23D80A}" | ||||||
|         "PackageCode" = "8:{6E8E8138-7BA0-493D-865D-E8176969F3D6}" |         "PackageCode" = "8:{C55D4877-9F39-49A6-9BA9-3ABFF15B61E7}" | ||||||
|         "UpgradeCode" = "8:{DCF8EE94-B530-4C96-9C74-CEA1A54769AF}" |         "UpgradeCode" = "8:{DCF8EE94-B530-4C96-9C74-CEA1A54769AF}" | ||||||
|         "RestartWWWService" = "11:FALSE" |         "RestartWWWService" = "11:FALSE" | ||||||
|         "RemovePreviousVersions" = "11:FALSE" |         "RemovePreviousVersions" = "11:FALSE" | ||||||
| @@ -2435,26 +2469,12 @@ | |||||||
|         } |         } | ||||||
|         "MergeModule" |         "MergeModule" | ||||||
|         { |         { | ||||||
|             "{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_AF6A9BB074714DE9926EE019616BE3D0" |  | ||||||
|             { |  | ||||||
|             "UseDynamicProperties" = "11:TRUE" |  | ||||||
|             "IsDependency" = "11:TRUE" |  | ||||||
|             "SourcePath" = "8:vjsharpredist_x86.msm" |  | ||||||
|                 "Properties" |  | ||||||
|                 { |  | ||||||
|                 } |  | ||||||
|             "LanguageId" = "3:0" |  | ||||||
|             "Exclude" = "11:TRUE" |  | ||||||
|             "Folder" = "8:" |  | ||||||
|             "Feature" = "8:" |  | ||||||
|             "IsolateTo" = "8:" |  | ||||||
|             } |  | ||||||
|         } |         } | ||||||
|         "ProjectOutput" |         "ProjectOutput" | ||||||
|         { |         { | ||||||
|             "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_24EE971158ED49B38B0773EA58C33E6F" |             "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_CABCFB3A84AF483B87164D02AE147ACE" | ||||||
|             { |             { | ||||||
|             "SourcePath" = "8:..\\UpdateWarFile\\obj\\x86\\Debug\\UpdateWarFile.exe" |             "SourcePath" = "8:..\\CommandLauncher\\bin\\CommandLauncher.exe" | ||||||
|             "TargetName" = "8:" |             "TargetName" = "8:" | ||||||
|             "Tag" = "8:" |             "Tag" = "8:" | ||||||
|             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" |             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" | ||||||
| @@ -2474,147 +2494,7 @@ | |||||||
|             "ProjectOutputGroupRegister" = "3:1" |             "ProjectOutputGroupRegister" = "3:1" | ||||||
|             "OutputConfiguration" = "8:" |             "OutputConfiguration" = "8:" | ||||||
|             "OutputGroupCanonicalName" = "8:Built" |             "OutputGroupCanonicalName" = "8:Built" | ||||||
|             "OutputProjectGuid" = "8:{38A7408E-9446-4DEA-9F76-2A901AE5F16B}" |             "OutputProjectGuid" = "8:{B52EF84A-D745-4637-9F59-DBD6E21C179C}" | ||||||
|             "ShowKeyOutput" = "11:TRUE" |  | ||||||
|                 "ExcludeFilters" |  | ||||||
|                 { |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|             "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_33BD777FB0CA488F96B43C8A9D0D1638" |  | ||||||
|             { |  | ||||||
|             "SourcePath" = "8:..\\SetupAsWindowsService\\obj\\x86\\Debug\\SetupAsWindowsService.exe" |  | ||||||
|             "TargetName" = "8:" |  | ||||||
|             "Tag" = "8:" |  | ||||||
|             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Transitive" = "11:FALSE" |  | ||||||
|             "Vital" = "11:TRUE" |  | ||||||
|             "ReadOnly" = "11:FALSE" |  | ||||||
|             "Hidden" = "11:FALSE" |  | ||||||
|             "System" = "11:FALSE" |  | ||||||
|             "Permanent" = "11:FALSE" |  | ||||||
|             "SharedLegacy" = "11:FALSE" |  | ||||||
|             "PackageAs" = "3:1" |  | ||||||
|             "Register" = "3:1" |  | ||||||
|             "Exclude" = "11:FALSE" |  | ||||||
|             "IsDependency" = "11:FALSE" |  | ||||||
|             "IsolateTo" = "8:" |  | ||||||
|             "ProjectOutputGroupRegister" = "3:1" |  | ||||||
|             "OutputConfiguration" = "8:" |  | ||||||
|             "OutputGroupCanonicalName" = "8:Built" |  | ||||||
|             "OutputProjectGuid" = "8:{BED4F512-4A94-4EC2-9479-43AFA8E4EAE1}" |  | ||||||
|             "ShowKeyOutput" = "11:TRUE" |  | ||||||
|                 "ExcludeFilters" |  | ||||||
|                 { |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|             "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_9BFD505E12784C9A97B3D567C0BEB8C1" |  | ||||||
|             { |  | ||||||
|             "SourcePath" = "8:..\\InitConfigFile\\obj\\x86\\Debug\\InitConfigFile.exe" |  | ||||||
|             "TargetName" = "8:" |  | ||||||
|             "Tag" = "8:" |  | ||||||
|             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Transitive" = "11:FALSE" |  | ||||||
|             "Vital" = "11:TRUE" |  | ||||||
|             "ReadOnly" = "11:FALSE" |  | ||||||
|             "Hidden" = "11:FALSE" |  | ||||||
|             "System" = "11:FALSE" |  | ||||||
|             "Permanent" = "11:FALSE" |  | ||||||
|             "SharedLegacy" = "11:FALSE" |  | ||||||
|             "PackageAs" = "3:1" |  | ||||||
|             "Register" = "3:1" |  | ||||||
|             "Exclude" = "11:FALSE" |  | ||||||
|             "IsDependency" = "11:FALSE" |  | ||||||
|             "IsolateTo" = "8:" |  | ||||||
|             "ProjectOutputGroupRegister" = "3:1" |  | ||||||
|             "OutputConfiguration" = "8:" |  | ||||||
|             "OutputGroupCanonicalName" = "8:Built" |  | ||||||
|             "OutputProjectGuid" = "8:{E3528B18-D4A0-4604-B2C5-8EE36E094A40}" |  | ||||||
|             "ShowKeyOutput" = "11:TRUE" |  | ||||||
|                 "ExcludeFilters" |  | ||||||
|                 { |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|             "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_A76F97BE8A8049FEB37D29E540FBE2F9" |  | ||||||
|             { |  | ||||||
|             "SourcePath" = "8:..\\MungeCryptoPropertiesFilePath\\obj\\x86\\Debug\\MungeCryptoPropertiesFilePath.exe" |  | ||||||
|             "TargetName" = "8:" |  | ||||||
|             "Tag" = "8:" |  | ||||||
|             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Transitive" = "11:FALSE" |  | ||||||
|             "Vital" = "11:TRUE" |  | ||||||
|             "ReadOnly" = "11:FALSE" |  | ||||||
|             "Hidden" = "11:FALSE" |  | ||||||
|             "System" = "11:FALSE" |  | ||||||
|             "Permanent" = "11:FALSE" |  | ||||||
|             "SharedLegacy" = "11:FALSE" |  | ||||||
|             "PackageAs" = "3:1" |  | ||||||
|             "Register" = "3:1" |  | ||||||
|             "Exclude" = "11:FALSE" |  | ||||||
|             "IsDependency" = "11:FALSE" |  | ||||||
|             "IsolateTo" = "8:" |  | ||||||
|             "ProjectOutputGroupRegister" = "3:1" |  | ||||||
|             "OutputConfiguration" = "8:" |  | ||||||
|             "OutputGroupCanonicalName" = "8:Built" |  | ||||||
|             "OutputProjectGuid" = "8:{75D8742F-4778-4978-9032-ED9649BA402D}" |  | ||||||
|             "ShowKeyOutput" = "11:TRUE" |  | ||||||
|                 "ExcludeFilters" |  | ||||||
|                 { |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|             "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_E9000CEAF5CD467E91E857EE453F7775" |  | ||||||
|             { |  | ||||||
|             "SourcePath" = "8:..\\ClientKeystoreSetup\\obj\\x86\\Debug\\ClientKeystoreSetup.exe" |  | ||||||
|             "TargetName" = "8:" |  | ||||||
|             "Tag" = "8:" |  | ||||||
|             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Transitive" = "11:FALSE" |  | ||||||
|             "Vital" = "11:TRUE" |  | ||||||
|             "ReadOnly" = "11:FALSE" |  | ||||||
|             "Hidden" = "11:FALSE" |  | ||||||
|             "System" = "11:FALSE" |  | ||||||
|             "Permanent" = "11:FALSE" |  | ||||||
|             "SharedLegacy" = "11:FALSE" |  | ||||||
|             "PackageAs" = "3:1" |  | ||||||
|             "Register" = "3:1" |  | ||||||
|             "Exclude" = "11:FALSE" |  | ||||||
|             "IsDependency" = "11:FALSE" |  | ||||||
|             "IsolateTo" = "8:" |  | ||||||
|             "ProjectOutputGroupRegister" = "3:1" |  | ||||||
|             "OutputConfiguration" = "8:" |  | ||||||
|             "OutputGroupCanonicalName" = "8:Built" |  | ||||||
|             "OutputProjectGuid" = "8:{89D5D921-A2E6-4ED9-A724-8C7DAAC09AC5}" |  | ||||||
|             "ShowKeyOutput" = "11:TRUE" |  | ||||||
|                 "ExcludeFilters" |  | ||||||
|                 { |  | ||||||
|                 } |  | ||||||
|             } |  | ||||||
|             "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_F483B367258C4C0196BA64210B2F9050" |  | ||||||
|             { |  | ||||||
|             "SourcePath" = "8:..\\ServerKeystoreSetup\\obj\\x86\\Debug\\ServerKeystoreSetup.exe" |  | ||||||
|             "TargetName" = "8:" |  | ||||||
|             "Tag" = "8:" |  | ||||||
|             "Folder" = "8:_62B357DC6D484761A18291FA3525320C" |  | ||||||
|             "Condition" = "8:" |  | ||||||
|             "Transitive" = "11:FALSE" |  | ||||||
|             "Vital" = "11:TRUE" |  | ||||||
|             "ReadOnly" = "11:FALSE" |  | ||||||
|             "Hidden" = "11:FALSE" |  | ||||||
|             "System" = "11:FALSE" |  | ||||||
|             "Permanent" = "11:FALSE" |  | ||||||
|             "SharedLegacy" = "11:FALSE" |  | ||||||
|             "PackageAs" = "3:1" |  | ||||||
|             "Register" = "3:1" |  | ||||||
|             "Exclude" = "11:FALSE" |  | ||||||
|             "IsDependency" = "11:FALSE" |  | ||||||
|             "IsolateTo" = "8:" |  | ||||||
|             "ProjectOutputGroupRegister" = "3:1" |  | ||||||
|             "OutputConfiguration" = "8:" |  | ||||||
|             "OutputGroupCanonicalName" = "8:Built" |  | ||||||
|             "OutputProjectGuid" = "8:{BAF8BCFB-1C97-4CA7-B03E-E588A67B21E0}" |  | ||||||
|             "ShowKeyOutput" = "11:TRUE" |             "ShowKeyOutput" = "11:TRUE" | ||||||
|                 "ExcludeFilters" |                 "ExcludeFilters" | ||||||
|                 { |                 { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user