# $Id: CHANGES.txt 491 2012-01-24 17:02:14Z lucboudreau $

###############################################################################

# Olap4j 1.0.1

This release is a maintenance release and maintains backwards compatibility
with version 1.0.0. The license under which olap4j is distributed has changed
starting with this release. Olap4j is now distributed in accordance to the
Apache License Version 2.0.

Among other notable changes, this version introduces support for JDBC 4.1.

* New Features / Improvements
    - Added support for Java 7 / JDBC 4.1.
    - XMLA now supports locales.
    - TCK now tests the roles and access controls.

* XMLA Bug Fixes
    - Fixed bug 848534. Virtual cubes are now returned as part of
      Schema.getCubes().
    - Fixed issues with the  experimental Query Model.
    - Fixes an issue with SAP BW where the XMLA driver would scan
      through all the available databases/catalogs/schemas, causing
      access control exceptions.
    - Added the ability to pass server specific properties as part
      of the XMLA's PropertyList payload.
    - The XmlaDriver now exposes a public constructor to prevent
      errors in Sun's JDBC implementation.

# Olap4j 1.0.0

Although this file was not kept up to date since a while, we intend to change
this starting with version 1.0.0. :)

Olap4j 1.0.0 brings changes to the top of the metadata hierarchy,
changes in the driver specification, along with the removal of
all APIs which were marked for deprecation prior to 1.0.0.

* Metadata changes
    Version 1.0.0 introduces a new object at the top of the OlapDatabaseMetaData,
    namely the Database object. The database was an implicit member; we
    have decided to turn it into a first class object of the hierarchy. Catalogs
    have been modified to reflect this new parent. OlapConnections now have
    methods to explore the Databases, Catalogs and Schemas on a server.

* Driver specification changes
    OlapConnections must now be bound unto a database, a catalog and a schema
    before being able to resolve cubes and execute queries. Reference
    implementations have been modified to reflect the correct behavior, as was
    the TCK. New methods were added to OlapConnection in order to change the
    connection binding and obtain lists of available Databases, Catalogs
    and Schemas.

Olap4j is now split into five Java libraries.

* olap4j.jar
    The core API

* olap4j-xmla.jar
    The XML/A driver for olap4j.

* olap4j-tck.jar
    TCK classes.

* olap4j-jdk14.jar
    Java 1.4 compatible release. Contains the core API and XML/A driver.

* olap4j-sources.jar
    Java source files.

===============================================================================

# Changes to olap4j since olap4j-0.9.3.

Summary of changes between olap4j-0.9.3 and olap4j-0.9.4-svn072:
* olap4j now has an XMLA driver. Tested against mondrian's XMLA driver,
  it should also work against other XMLA drivers such as Microsoft
  Analysis Services.

* olap4j's mondrian driver is now part of the mondrian release.
  Look for it in mondrian-3.0 onwards.

* More tests, numerous bug-fixes.

API changes:
* Arguments to AxisNode constructor re-ordered.

* Hierarchy.getDefaultMEmber() now throws OlapException.

* Cube.getMeasures() returns members sorted by ordinal.

* Added constructor for IdentifierNode which takes a list
  (convenient for calling with the result from
  IdentifierNode.parseIdentifier).

------------------------------------------------------------------------
r72 | jhyde | 2008-02-05 11:46:03 -0800 (Tue, 05 Feb 2008) | 1 line

Up olap4j version; remove jars required by mondrian driver (now that it lives under mondrian).
------------------------------------------------------------------------
r71 | jhyde | 2008-02-05 11:37:23 -0800 (Tue, 05 Feb 2008) | 1 line

XMLA driver now reads member corresponding to each measure, so that it can sort by ordinal.
------------------------------------------------------------------------
r70 | jhyde | 2008-02-04 16:22:15 -0800 (Mon, 04 Feb 2008) | 1 line

Cube.getMeasures() returns members sorted by ordinal.
------------------------------------------------------------------------
r69 | jhyde | 2008-02-02 15:28:59 -0800 (Sat, 02 Feb 2008) | 1 line

Switch order of parameters to AxisNode (it's easier to write code if the bulky expression comes last). Fix 'jar' build on windows. Push up memory for unit test (in-process XMLA test is hungry).
------------------------------------------------------------------------
r68 | jhyde | 2008-01-31 23:07:41 -0800 (Thu, 31 Jan 2008) | 1 line

XMLA driver: add member cache; call MDSCHEMA_MEMBERS with multiple unique-names. Hierarchy.getDefaultMember() now throws OlapException. XmlaTester caches connections.
------------------------------------------------------------------------
r67 | jhyde | 2008-01-23 23:42:35 -0800 (Wed, 23 Jan 2008) | 1 line

XMLA driver: when constructing metadata request XML, encode restriction values
------------------------------------------------------------------------
r66 | jhyde | 2008-01-23 23:21:25 -0800 (Wed, 23 Jan 2008) | 1 line

Add constructor for IdentifierNode which takes a list (convenient for calling with the result from IdentifierNode.parseIdentifier); Test case for building MDX parse tree programmatically and executing as query.
------------------------------------------------------------------------
r65 | jhyde | 2008-01-23 21:14:58 -0800 (Wed, 23 Jan 2008) | 1 line

Add support for Basic Authentication to XMLA driver (contributed by Luc Boudreau); add Base64 utilities (needed for Basic Authentication); fix MetadataTest for additional functions just added to mondrian.
------------------------------------------------------------------------
r64 | jhyde | 2008-01-21 06:13:36 -0800 (Mon, 21 Jan 2008) | 1 line

Oops
------------------------------------------------------------------------
r63 | jhyde | 2008-01-21 06:12:55 -0800 (Mon, 21 Jan 2008) | 1 line

Remove unused mondrian import
------------------------------------------------------------------------
r62 | jhyde | 2008-01-12 18:18:47 -0800 (Sat, 12 Jan 2008) | 1 line

Fix XMLA driver for calculated members defined in query; and make hierarchies and members returned for the slicer consistent between XMLA and mondrian drivers.
------------------------------------------------------------------------
r61 | jhyde | 2008-01-10 11:20:01 -0800 (Thu, 10 Jan 2008) | 1 line

Fix typo in javadoc
------------------------------------------------------------------------
r60 | jhyde | 2008-01-10 01:25:49 -0800 (Thu, 10 Jan 2008) | 1 line

Clarify what the slicer axis contains if the query has no WHERE clause; clarify Cell.getFormattedValue() if the value is NULL; and add testcase for query with no slicer.
------------------------------------------------------------------------
r59 | jhyde | 2008-01-09 21:35:55 -0800 (Wed, 09 Jan 2008) | 1 line

Move olap4j driver for mondrian to mondrian code base.
------------------------------------------------------------------------
r58 | jhyde | 2008-01-09 00:34:03 -0800 (Wed, 09 Jan 2008) | 1 line

Enable keyword substitution for some source files.
------------------------------------------------------------------------
r57 | jhyde | 2008-01-09 00:31:56 -0800 (Wed, 09 Jan 2008) | 1 line

XMLA driver now uses HTTP POST (some server's don't support GET)
------------------------------------------------------------------------
r56 | jhyde | 2008-01-06 12:34:57 -0800 (Sun, 06 Jan 2008) | 1 line

Fix metadata test now mondrian has more functions
------------------------------------------------------------------------
r55 | jhyde | 2007-12-21 15:55:30 -0800 (Fri, 21 Dec 2007) | 1 line

Update MetadataTest now mondrian has 2 extra functions; fix drill-through test for Derby's JDBC driver weirdness.
------------------------------------------------------------------------
r54 | jhyde | 2007-12-18 14:11:57 -0800 (Tue, 18 Dec 2007) | 1 line

Fix code examples in functional spec, and improve a few javadoc comments. ResultSet returned from Cell.drillThrough() now closes its connection and statement on close, thereby fixing a connection leak.
------------------------------------------------------------------------
r53 | jhyde | 2007-12-13 17:07:28 -0800 (Thu, 13 Dec 2007) | 1 line

Oops: fix for JDK 1.5, and fix typo in ant classpath; update web home page for 0.9.3.
------------------------------------------------------------------------
r52 | jhyde | 2007-12-13 15:15:53 -0800 (Thu, 13 Dec 2007) | 1 line

Major progress on XMLA driver. All tests pass for XMLA driver (running against mondrian in-process, but nevertheless sending and receiving SOAP requests) and still pass for mondrian driver.
------------------------------------------------------------------------

# End CHANGES.txt
