Skip to content

Commit

Permalink
MONDRIAN: Release 0.3.
Browse files Browse the repository at this point in the history
[git-p4: depot-paths = "//open/mondrian/": change = 98]
  • Loading branch information
julianhyde committed Aug 9, 2002
1 parent 4c4f03e commit a6c7324
Show file tree
Hide file tree
Showing 5 changed files with 133 additions and 28 deletions.
2 changes: 1 addition & 1 deletion build.bat
Expand Up @@ -43,7 +43,7 @@
@goto end
:x200

@set CLASSPATH=%SRCROOT%/classes;%SRCROOT%/lib/javacup.jar;%SRCROOT%/lib/boot.jar;%XALAN_HOME%/bin/xml-apis.jar;%XALAN_HOME%/lib/xercesImpl.jar
@set CLASSPATH=%SRCROOT%/classes;%SRCROOT%/lib/javacup.jar;%SRCROOT%/lib/boot.jar;%XALAN_HOME%/bin/xml-apis.jar;%XALAN_HOME%/bin/xercesImpl.jar

@rem To use Oracle, uncomment this line and modify appropriately
@rem set ORACLE_HOME=%HOME_DRIVE%:/oracle/ora81
Expand Down
5 changes: 5 additions & 0 deletions build.properties
Expand Up @@ -17,4 +17,9 @@
#build.compiler.pedantic=false
#build.compiler.fulldepend=false

# Properties for the "upload-javadoc" target. Change the password.
pscp.password=changeme
pscp.user=jhyde@mondrian.sourceforge.net
pscp.path=/home/groups/m/mo/mondrian/htdocs

# End build.properties
59 changes: 44 additions & 15 deletions build.xml
Expand Up @@ -16,7 +16,7 @@
<property name="project.build.debug" value="on"/>
<property name="Name" value="Mondrian"/>
<property name="name" value="mondrian"/>
<property name="version" value="0.2"/>
<property name="version" value="0.3"/>

<!--
===================================================================
Expand Down Expand Up @@ -72,7 +72,9 @@ ${etc.dir}/mondrian/web/jsp/**/*.java"/>
</path>

<taskdef name="javacup" classname="java_cup.JavaCUPTask"/>
<taskdef name="xomgen" classname="mondrian.xom.XOMGenTask"/>
<taskdef name="xomgen" classname="mondrian.xom.XOMGenTask">
<classpath refid="project.boot.classpath"/>
</taskdef>

<target name="sniff"
description="Figures out which components are available">
Expand Down Expand Up @@ -226,25 +228,28 @@ ${etc.dir}/mondrian/web/jsp/**/*.java"/>

<target name="srczip">
<mkdir dir="${dist.dir}" />
<delete file="${dist.src.file}"/>
<zip
zipfile="${dist.src.file}"
update="true">
<zipfileset
dir="."
prefix="${dist.name}"
includes="**/*.java, **/*.cup, **/*.html, **/*.css, ${java.dir}/mondrian/resource/Resource.xml, ${java.dir}/mondrian/olap/Mondrian.xml, ${java.dir}/mondrian/xom/Meta.xml, ${lib.dir}/javacup.jar, ${lib.dir}/boot.jar, ${webapp.dir}/WEB-INF/web.xml, ${webapp.dir}/**/*.jsp, ${webapp.dir}/WEB-INF/*.xsl, ${webapp.dir}/WEB-INF/*.tld, resource/*.xml, resource/*.xsl, build.xml, build.bat, build.properties, deploy_env.properties, LICENSE.html, README.txt, VERSION.txt, ${demo.dir}/FoodMart.xml"
includes="**/*.java, **/*.cup, **/*.html, **/*.css, ${java.dir}/mondrian/resource/Resource.xml, ${java.dir}/mondrian/olap/Mondrian.xml, ${java.dir}/mondrian/xom/Meta.xml, ${java.dir}/javax/jmi/model/resources/mof.xml, ${lib.dir}/javacup.jar, ${lib.dir}/boot.jar, ${webapp.dir}/WEB-INF/web.xml, ${webapp.dir}/**/*.jsp, ${webapp.dir}/WEB-INF/*.xsl, ${webapp.dir}/WEB-INF/*.tld, resource/*.xml, resource/*.xsl, build.xml, build.bat, build.properties, deploy_env.properties, LICENSE.html, README.txt, VERSION.txt, ${demo.dir}/FoodMart.xml"
excludes="${javadoc.dir}/**, **/*~, ${generated.java.files}" />
</zip>
</target>

<target name="datazip">
<mkdir dir="${dist.dir}" />
<delete file="${dist.data.file}"/>
<zip
zipfile="${dist.data.file}"
update="true">
<!-- We do not use 'prefix="${dist.name}"', cuz we don't want to issue a
new data file each release. -->
<zipfileset
dir="."
prefix="${dist.name}"
includes="LICENSE.html, README.txt, VERSION.txt, demo/FoodMartData.sql, demo/FoodMartTables.sql, demo/FoodMartIndexes.sql, demo/oracle/FoodMartData.sql, demo/oracle/FoodMartTables.sql, demo/oracle/FoodMartIndexes.sql, demo/oracle/FoodMart.dmp, demo/access/MondrianFoodMart.mdb, demo/**/*.pl, demo/**/*.sh"
excludes="demo/FoodMart.xml, **/*~"/>
</zip>
Expand Down Expand Up @@ -302,6 +307,7 @@ ${etc.dir}/mondrian/web/jsp/**/*.java"/>

<target name="javadoc">
<mkdir dir="${javadoc.dir}" />
<delete quiet="true" file="${javadoc.dir}/index.html"/>
<javadoc sourcepath="${java.dir}"
destdir="${javadoc.dir}"
packagenames="mondrian.*"
Expand All @@ -315,10 +321,22 @@ ${etc.dir}/mondrian/web/jsp/**/*.java"/>
todir="${javadoc.dir}/mondrian/olap"/>
</target>

<target name="upload-javadoc" depends="javadoc" description="
Copies javadoc to sourceforge, where it will be accessible via
http://mondrian.sourceforge.net/api/index.html.
You should set pscp.user, pscp.password and pscp.path in build.properties">
<exec executable="pscp.exe">
<arg line="-pw ${pscp.password}"/>
<arg line="-r ${javadoc.dir}"/>
<arg line="${pscp.user}:${pscp.path}"/>
</exec>
</target>

<target name="webapp" depends="compile">
<filter filtersfile="deploy_env.properties"/>
<mkdir dir="${dist.dir}" />
<delete file="${war.file}"/>
<delete file="${dist.dir}/web.xml"/>
<copy file="${webapp.dir}/WEB-INF/web.xml"
filtering="true" todir="${dist.dir}"/>
<war warfile="${war.file}"
Expand All @@ -339,29 +357,38 @@ ${etc.dir}/mondrian/web/jsp/**/*.java"/>

<!-- targets to start and stop tomcat -->

<!-- I had to take the 'C:' off these paths, otherwise the path got truncated
to just the first element. Any ideas, anyone? -->
<path id="tomcat.classpath">
<pathelement location="${jdk.home}/lib/tools.jar"/>
<pathelement location="${tomcat.home}/bin/bootstrap.jar"/>
<pathelement path="/jdk1.3.1_02/lib/tools.jar"/>
<pathelement path="/jakarta-tomcat-4.0.3/localhost/work/classes"/>
<pathelement path="/jakarta-tomcat-4.0.3/bin/bootstrap.jar"/>
</path>

<target name="start.tomcat">
<property name="foo" refid="tomcat.classpath"/>
<echo message="classpath is ${foo}"/>
<java classpathref="tomcat.classpath"
classname="org.apache.catalina.startup.Bootstrap"
dir="${tomcat.home}/bin"
fork="yes">
<jvmarg value="-Dcatalina.base=${tomcat.home}"/>
<jvmarg value="-Dcatalina.home=${tomcat.home}"/>
<jvmarg value="-Djava.io.tmpdir=${tomcat.home}/temp"/>
<sysproperty key="catalina.base" value=".."/>
<sysproperty key="catalina.home" value=".."/>
<sysproperty key="java.io.tmpdir" value="../temp"/>
<sysproperty key="java.endorsed.dirs" value="../bin;../common/lib"/>
<arg value="start"/>
</java>
</target>

<target name="debug.tomcat">
<java classpathref="tomcat.classpath"
classname="org.apache.catalina.startup.Bootstrap"
dir="${tomcat.home}/bin"
fork="yes">
<jvmarg value="-Dcatalina.base=${tomcat.home}"/>
<jvmarg value="-Dcatalina.home=${tomcat.home}"/>
<jvmarg value="-Djava.io.tmpdir=${tomcat.home}/temp"/>
<sysproperty key="catalina.base" value=".."/>
<sysproperty key="catalina.home" value=".."/>
<sysproperty key="java.io.tmpdir" value="../temp"/>
<sysproperty key="java.endorsed.dirs" value="../bin;../common/lib"/>
<jvmarg value="-Xdebug"/>
<jvmarg value="-Xrunjdwp:transport=dt_socket,address=5000,server=y,suspend=n"/>
<arg value="start"/>
Expand All @@ -371,10 +398,12 @@ ${etc.dir}/mondrian/web/jsp/**/*.java"/>
<target name="stop.tomcat">
<java classpathref="tomcat.classpath"
classname="org.apache.catalina.startup.Bootstrap"
dir="${tomcat.home}/bin"
fork="yes">
<jvmarg value="-Dcatalina.base=${tomcat.home}"/>
<jvmarg value="-Dcatalina.home=${tomcat.home}"/>
<jvmarg value="-Djava.io.tmpdir=${tomcat.home}/temp"/>
<sysproperty key="catalina.base" value=".."/>
<sysproperty key="catalina.home" value=".."/>
<sysproperty key="java.io.tmpdir" value="../temp"/>
<sysproperty key="java.endorsed.dirs" value="../bin;../common/lib"/>
<arg value="stop"/>
</java>
</target>
Expand Down
85 changes: 76 additions & 9 deletions doc/install.html
Expand Up @@ -97,7 +97,7 @@ <h2><a name="3_Setup_build_environment">3. Setup build environment</a></h2>
<p>Here are the steps to setup a build environment.</p>

<ol>
<li>Install <a href="#JDK">JDK 1.3.1</a>.</li>
<li>Install <a href="#JDK">JDK</a>.</li>
<li>Install <a href="#Ant">Ant</a>.</li>
<li>Install <a href="#Tomcat">Tomcat</a>.</li>
<li>Install <a href="#Xalan">Xalan</a>.</li>
Expand All @@ -114,19 +114,42 @@ <h2><a name="3_Setup_build_environment">3. Setup build environment</a></h2>
</ol>

<h2><a name="4_Download_the_source_code">4. Download the source code</a></h2>

<p>Two ways to do this.</p>

<h3><a name="4_1_Download_the_latest_release_from_SourceForge">4.1. Download the
latest release from SourceForge</a></h3>
<p>Download <code>mondrian-0.3-src.zip</code> and <code>mondrian-0.3-data.zip</code>
(or later versions) from <a href="http://sourceforge.net/projects/mondrian">
Sourceforge</a>, and unzip them. For example, if you unzip to <code>Z:\</code>,
you will end up with a file structure including
<code>Z:\mondrian-0.3\build.xml</code> and
<code>Z:\mondrian-0.3\demo\FoodMartData.sql</code>.</p>

<p>If you are a mondrian developer, create a perforce client. The perforce
server's port is 66.123.172.226:1666. Use a view specification like this
(substituting the name of your perforce client for CLIENT):</p>
<blockquote>
<pre>//open/mondrian/... //CLIENT/mondrian/...</pre>
</blockquote>
<h3><a name="4_2_Connect_to_the_Perforce_source_code_server">4.2. Connect to the
Perforce source code server</a></h3>

<p>If you are a mondrian developer, and need to access the latest source code
and check in changes, you should connect to the source code server:</p>
<ol>
<li>Download the perforce client from
<a href="http://www.perforce.com/perforce/loadprog.html">
http://www.perforce.com/perforce/loadprog.html</a></li>
<li>If you have Windows, start the perforce UI (P4Win). (If you are not
running windows, you will have to use the command-line interface to do the
following; 'p4 help' should get you started.)</li>
<li>Create a perforce user for yourself (generally people use their
SourceForge usernames).</li>
<li>Create a perforce client (called &lt;&lt;username&gt;&gt; or
&lt;&lt;username&gt;&gt;.&lt;&lt;hostname&gt;&gt;), with a root something like 'C:\' or 'D:\work' and
view specification of<blockquote>
<pre>//open/mondrian/... //&lt;&lt;clientname&gt;&gt;/mondrian/...</pre>
</blockquote>
</li>
<li>Sync to head revision.</li>
<li>Email me the name of the perforce user so I can give you write access to
the perforce depot.</li>
</ol>

<h2><a name="5_Build">5. Build</a></h2>
<p>As follows:</p>
Expand All @@ -146,8 +169,52 @@ <h3> <b>6.1. Microsoft Access</b></h3>
The JDBC connect string will be <code>jdbc:odbc:MondrianFoodMart</code>.</p>
<h3>6.2. Oracle</h3>
<p>Version 8.1.7 or higher.</p>
<p>Create the dataset by importing <code>${project.location}/demo/oracle/FoodMart.dmp</code>.
(You don't need to run <code>FoodMartTables.sql</code> and <code>
<p>Create the dataset by importing <code>${project.location}/demo/oracle/FoodMart.dmp</code>:<blockquote>

<pre>$ <b>sqlplus system/manager</b>
SQL> <b>create user foodmart identified by foodmart;</b>

User created.

SQL> <b>grant connect, resource to foodmart;</b>

Grant succeeded.

SQL> <b>exit</b>
Disconnected from Oracle8i Enterprise Edition Release 8.1.7.3.0 - Production
With the Partitioning option
JServer Release 8.1.7.3.0 - Production
$ <b>imp foodmart/foodmart full=y file=C:/mondrian/demo/oracle/FoodMart.dmp</b>

Import: Release 8.1.7.3.0 - Production on Mon Aug 5 11:37:35 2002

(c) Copyright 2000 Oracle Corporation. All rights reserved.


Connected to: Oracle8i Enterprise Edition Release 8.1.7.3.0 - Production
With the Partitioning option
JServer Release 8.1.7.3.0 - Production

Export file created by EXPORT:V08.01.07 via conventional path
import done in WE8ISO8859P1 character set and WE8ISO8859P1 NCHAR character set
. importing FOODMART's objects into FOODMART
. . importing table "customer" 10281 rows imported
. . importing table "days" 7 rows imported
. . importing table "inventory_fact_1997" 4070 rows imported
. . importing table "inventory_fact_1998" 7282 rows imported
. . importing table "product" 1560 rows imported
. . importing table "product_class" 110 rows imported
. . importing table "promotion" 1864 rows imported
. . importing table "region" 110 rows imported
. . importing table "sales_fact_1997" 86837 rows imported
. . importing table "sales_fact_1998" 164558 rows imported
. . importing table "sales_fact_dec_1998" 18325 rows imported
. . importing table "store" 24 rows imported
. . importing table "time_by_day" 730 rows imported
. . importing table "warehouse" 24 rows imported
. . importing table "warehouse_class" 6 rows imported
Import terminated successfully without warnings.</pre>
</blockquote>. (You don't need to run <code>FoodMartTables.sql</code> and <code>
FoodMartIndexes.sql</code> in that folder.)</p>
<p>Setup your environment as follows:</p>
<ol>
Expand Down
10 changes: 7 additions & 3 deletions src/main/mondrian/olap/Util.java
Expand Up @@ -455,9 +455,13 @@ public String toString()


/**
* Converts an OLE DB connect string such as "Provider=MSOLAP;
* DataSource=LOCALHOST;" into a {@link PropertyList} containing (key,
* value) pairs {("Provider","MSOLAP"), ("DataSource", "LOCALHOST")}.
* Converts an OLE DB connect string into a {@link PropertyList}.
*
* <p> For example, <code>"Provider=MSOLAP; DataSource=LOCALHOST;"</code>
* becomes the set of (key, value) pairs <code>{("Provider","MSOLAP"),
* ("DataSource", "LOCALHOST")}</code>. Another example is
* <code>Provider='sqloledb';Data Source='MySqlServer';Initial
* Catalog='Pubs';Integrated Security='SSPI';</code>.
*
* <p>Syntax Notes (quotes are not implemented)<ul>
*
Expand Down

0 comments on commit a6c7324

Please sign in to comment.