public Cube createCube(String xml) { RolapCube cube; try { final Parser xmlParser = XOMUtil.createDefaultParser(); final DOMWrapper def = xmlParser.parse(xml); final String tagName = def.getTagName(); if (tagName.equals("Cube")) { // Create empty XML schema, to keep the method happy. This is // okay, because there are no forward-references to resolve. final MondrianDef.Schema xmlSchema = new MondrianDef.Schema(); MondrianDef.Cube xmlDimension = new MondrianDef.Cube(def); cube = new RolapCube(this, xmlSchema, xmlDimension, false); } else if (tagName.equals("VirtualCube")) { // Need the real schema here. MondrianDef.Schema xmlSchema = getXMLSchema(); MondrianDef.VirtualCube xmlDimension = new MondrianDef.VirtualCube(def); cube = new RolapCube(this, xmlSchema, xmlDimension, false); } else { throw new XOMException( "Got <" + tagName + "> when expecting <Cube>"); } } catch (XOMException e) { throw Util.newError( e, "Error while creating cube from XML [" + xml + "]"); } return cube; }
public void display(java.io.PrintWriter _out, int _indent) { _out.println(getName()); displayAttribute(_out, "name", name, _indent+1); displayAttribute(_out, "caption", caption, _indent+1); displayAttribute(_out, "visible", visible, _indent+1); displayAttribute(_out, "description", description, _indent+1); displayAttribute(_out, "defaultMeasure", defaultMeasure, _indent+1); displayAttribute(_out, "cache", cache, _indent+1); displayAttribute(_out, "enabled", enabled, _indent+1); displayElement(_out, "annotations", (org.eigenbase.xom.ElementDef) annotations, _indent+1); displayElement(_out, "fact", (org.eigenbase.xom.ElementDef) fact, _indent+1); displayElementArray(_out, "dimensions", dimensions, _indent+1); displayElementArray(_out, "measures", measures, _indent+1); displayElementArray(_out, "calculatedMembers", calculatedMembers, _indent+1); displayElementArray(_out, "namedSets", namedSets, _indent+1); } public void displayXML(org.eigenbase.xom.XMLOutput _out, int _indent)
public boolean displayDiff(org.eigenbase.xom.ElementDef _other, java.io.PrintWriter _out, int _indent) { Cube _cother = (Cube)_other; boolean _diff = displayAttributeDiff("name", name, _cother.name, _out, _indent+1); _diff = _diff && displayAttributeDiff("caption", caption, _cother.caption, _out, _indent+1); _diff = _diff && displayAttributeDiff("visible", visible, _cother.visible, _out, _indent+1); _diff = _diff && displayAttributeDiff("description", description, _cother.description, _out, _indent+1); _diff = _diff && displayAttributeDiff("defaultMeasure", defaultMeasure, _cother.defaultMeasure, _out, _indent+1); _diff = _diff && displayAttributeDiff("cache", cache, _cother.cache, _out, _indent+1); _diff = _diff && displayAttributeDiff("enabled", enabled, _cother.enabled, _out, _indent+1); _diff = _diff && displayElementDiff("annotations", annotations, _cother.annotations, _out, _indent+1); _diff = _diff && displayElementDiff("fact", fact, _cother.fact, _out, _indent+1); _diff = _diff && displayElementArrayDiff("dimensions", dimensions, _cother.dimensions, _out, _indent+1); _diff = _diff && displayElementArrayDiff("measures", measures, _cother.measures, _out, _indent+1); _diff = _diff && displayElementArrayDiff("calculatedMembers", calculatedMembers, _cother.calculatedMembers, _out, _indent+1); _diff = _diff && displayElementArrayDiff("namedSets", namedSets, _cother.namedSets, _out, _indent+1); return _diff; } // BEGIN pass-through code block ---
public void displayXML(org.eigenbase.xom.XMLOutput _out, int _indent) { _out.beginTag("Cube", new org.eigenbase.xom.XMLAttrVector() .add("name", name) .add("caption", caption) .add("visible", visible) .add("description", description) .add("defaultMeasure", defaultMeasure) .add("cache", cache) .add("enabled", enabled) ); displayXMLElement(_out, (org.eigenbase.xom.ElementDef) annotations); displayXMLElement(_out, (org.eigenbase.xom.ElementDef) fact); displayXMLElementArray(_out, dimensions); displayXMLElementArray(_out, measures); displayXMLElementArray(_out, calculatedMembers); displayXMLElementArray(_out, namedSets); _out.endTag("Cube"); } public boolean displayDiff(org.eigenbase.xom.ElementDef _other, java.io.PrintWriter _out, int _indent)
public Dimension getDimension(Schema schema) { Util.assertPrecondition(schema != null, "schema != null"); if (cubeName == null) { return schema.getPublicDimension(name); } else { Cube cube = schema.getCube(cubeName); return cube.getDimension(schema, name); } } // END pass-through code block ---