Skip to content

Commit

Permalink
MONDRIAN: Add CUBE_CAPTION to MDSCHEMA_CUBES result. Fixes bug MONDRI…
Browse files Browse the repository at this point in the history
…AN-919,

    "MondrianOlap4jDatabaseMetaData.getCubes doesn't return CUBE_CAPTION";
    partial fix for MONDRIAN-884.

[git-p4: depot-paths = "//open/mondrian/": change = 14191]
  • Loading branch information
julianhyde committed Apr 6, 2011
1 parent d4efaa9 commit 9e42364
Show file tree
Hide file tree
Showing 5 changed files with 50 additions and 2 deletions.
12 changes: 11 additions & 1 deletion src/main/mondrian/xmla/RowsetDefinition.java
Expand Up @@ -3,7 +3,7 @@
// This software is subject to the terms of the Eclipse Public License v1.0
// Agreement, available at the following URL:
// http://www.eclipse.org/legal/epl-v10.html.
// Copyright (C) 2003-2010 Julian Hyde
// Copyright (C) 2003-2011 Julian Hyde
// All Rights Reserved.
// You must accept the terms of that agreement to use this software.
*/
Expand Down Expand Up @@ -558,6 +558,7 @@ public Rowset getRowset(XmlaRequest request, XmlaHandler handler) {
MdschemaCubesRowset.IsWriteEnabled,
MdschemaCubesRowset.IsLinkable,
MdschemaCubesRowset.IsSqlEnabled,
MdschemaCubesRowset.CubeCaption,
MdschemaCubesRowset.Description,
MdschemaCubesRowset.Dimensions,
MdschemaCubesRowset.Sets,
Expand Down Expand Up @@ -3510,6 +3511,14 @@ public static class MdschemaCubesRowset extends Rowset {
Column.NOT_RESTRICTION,
Column.REQUIRED,
"Describes whether or not SQL can be used on the cube");
private static final Column CubeCaption =
new Column(
"CUBE_CAPTION",
Type.String,
null,
Column.NOT_RESTRICTION,
Column.OPTIONAL,
"The caption of the cube.");
private static final Column Description =
new Column(
"DESCRIPTION",
Expand Down Expand Up @@ -3581,6 +3590,7 @@ public void populateImpl(
row.set(IsWriteEnabled.name, false);
row.set(IsLinkable.name, false);
row.set(IsSqlEnabled.name, false);
row.set(CubeCaption.name, cube.getCaption());
row.set(Description.name, desc);
Format formatter =
new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
Expand Down
20 changes: 19 additions & 1 deletion testsrc/main/mondrian/xmla/XmlaBasicTest.ref.xml
Expand Up @@ -105,6 +105,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -122,6 +123,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>HR</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - HR Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -134,6 +136,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -146,6 +149,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales 2</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales 2 Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -158,6 +162,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales Ragged</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Ragged Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -170,6 +175,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Store</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Store Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -182,6 +188,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Warehouse</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Warehouse Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -194,6 +201,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Warehouse and Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Warehouse and Sales Cube</DESCRIPTION>
</row>
</root>
Expand Down Expand Up @@ -268,6 +276,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -285,6 +294,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>HR</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - HR Cube</DESCRIPTION>
<DIMENSIONS>
<row>
Expand Down Expand Up @@ -1096,6 +1106,7 @@
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "HR",
"DESCRIPTION": "FoodMart Schema - HR Cube",
"DIMENSIONS": [
{
Expand Down Expand Up @@ -20520,7 +20531,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
</row>
<row>
<FUNCTION_NAME>Extract</FUNCTION_NAME>
<DESCRIPTION>Returns a set of tuples from extracted dimension elements. The opposite of Crossjoin.</DESCRIPTION>
<DESCRIPTION>Returns a set of tuples from extracted hierarchy elements. The opposite of Crossjoin.</DESCRIPTION>
<PARAMETER_LIST>(none)</PARAMETER_LIST>
<RETURN_TYPE>1</RETURN_TYPE>
<ORIGIN>1</ORIGIN>
Expand Down Expand Up @@ -23085,6 +23096,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "HR",
"DESCRIPTION": "FoodMart Schema - HR Cube"
},
{
Expand All @@ -23097,6 +23109,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "Sales",
"DESCRIPTION": "FoodMart Schema - Sales Cube"
},
{
Expand All @@ -23109,6 +23122,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "Sales 2",
"DESCRIPTION": "FoodMart Schema - Sales 2 Cube"
},
{
Expand All @@ -23121,6 +23135,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "Sales Ragged",
"DESCRIPTION": "FoodMart Schema - Sales Ragged Cube"
},
{
Expand All @@ -23133,6 +23148,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "Store",
"DESCRIPTION": "FoodMart Schema - Store Cube"
},
{
Expand All @@ -23145,6 +23161,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "Warehouse",
"DESCRIPTION": "FoodMart Schema - Warehouse Cube"
},
{
Expand All @@ -23157,6 +23174,7 @@ WHERE [Marital Status].Parent * [Time].[1997].[Q1]
"IS_WRITE_ENABLED": false,
"IS_LINKABLE": false,
"IS_SQL_ENABLED": false,
"CUBE_CAPTION": "Warehouse and Sales",
"DESCRIPTION": "FoodMart Schema - Warehouse and Sales Cube"
}
]
Expand Down
3 changes: 3 additions & 0 deletions testsrc/main/mondrian/xmla/XmlaExcel2000Test.ref.xml
Expand Up @@ -1010,6 +1010,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand Down Expand Up @@ -1097,6 +1098,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -1114,6 +1116,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
</row>
</root>
Expand Down
7 changes: 7 additions & 0 deletions testsrc/main/mondrian/xmla/XmlaExcelXPTest.ref.xml
Expand Up @@ -981,6 +981,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand Down Expand Up @@ -1064,6 +1065,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -1081,6 +1083,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
</row>
</root>
Expand Down Expand Up @@ -1891,6 +1894,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -1908,6 +1912,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
</row>
</root>
Expand Down Expand Up @@ -2200,6 +2205,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -2217,6 +2223,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
</row>
</root>
Expand Down
10 changes: 10 additions & 0 deletions testsrc/main/mondrian/xmla/test/XmlaTest.ref.xml
Expand Up @@ -584,6 +584,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -600,6 +601,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
</row>
</root>
Expand Down Expand Up @@ -662,6 +664,7 @@
<xsd:element name="IS_WRITE_ENABLED" sql:field="IS_WRITE_ENABLED" type="xsd:boolean"/>
<xsd:element name="IS_LINKABLE" sql:field="IS_LINKABLE" type="xsd:boolean"/>
<xsd:element name="IS_SQL_ENABLED" sql:field="IS_SQL_ENABLED" type="xsd:boolean"/>
<xsd:element minOccurs="0" name="CUBE_CAPTION" sql:field="CUBE_CAPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DESCRIPTION" sql:field="DESCRIPTION" type="xsd:string"/>
<xsd:element minOccurs="0" name="DIMENSIONS" sql:field="DIMENSIONS"/>
<xsd:element minOccurs="0" name="SETS" sql:field="SETS"/>
Expand All @@ -678,6 +681,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>HR</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - HR Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -689,6 +693,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -700,6 +705,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales 2</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales 2 Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -711,6 +717,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Sales Ragged</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Sales Ragged Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -722,6 +729,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Store</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Store Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -733,6 +741,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Warehouse</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Warehouse Cube</DESCRIPTION>
</row>
<row>
Expand All @@ -744,6 +753,7 @@
<IS_WRITE_ENABLED>false</IS_WRITE_ENABLED>
<IS_LINKABLE>false</IS_LINKABLE>
<IS_SQL_ENABLED>false</IS_SQL_ENABLED>
<CUBE_CAPTION>Warehouse and Sales</CUBE_CAPTION>
<DESCRIPTION>FoodMart Schema - Warehouse and Sales Cube</DESCRIPTION>
</row>
</root>
Expand Down

0 comments on commit 9e42364

Please sign in to comment.