Java & Eclipse

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Java & Eclipse


    I've noticed two new sections on the Bullitin Board "Java API" and "Eclipse"

    Iam therefore curious to know if the Java API is available and if so can I get a copy? Have you created plugins for eclipse? If so could you possibly elaborate on their functionality? Can we now model cubes in Eclipse as well as excel?

  • RE: Java & Eclipse

    It's difficult to describe eclipse since it's a very open platform.

    Historically eclipse was an Integrated Development Environment (IDE) created by IBM. The developers at IBM wanted to create an IDE in java and along the way became frustrated with the performance of Swing. (Java is actually quite fast but some of the Swing GUI components can make the application feel slow). To overcome the issue of swing IBM create SWT so that java programs can use the native platforms GUI components and therefore have performance and a native look and feel.

    IBM open sourced eclipse a few years ago and since then it has gone from
    strength to strength.

    Eclipse is now a very open framework on which you can do just about anything. You can still develop java apps, but you can also get plugins so you can develop PHP, C/C++, Perl etc...

    There is an open source Eclipse addin called BIRT (Business Intelligence Reporting Tool) which is backed by the large reporting company Actuate which offers reporting capabilities eg charting, parameterised relational queries etc.

    There are addins for modelling in UML etc...

    Basically you can do anything in eclipse if you so desire.. It's a bit like
    microsofts latest offering of Visual Studio, whereby they have addins for
    most of their products. However I believe Eclipse offered all of this
    kind of stuff long before MS and above all it's free.

    The eclipse homepage is
  • RE: Java & Eclipse


    there will be a Java API available soon. It will be made available with TP II of Palo, so hopefully very soon. As it is provided from a different development team, we provide the Java API and tools related to that on another web site. This API as well as the Eclipse Client will be provided on

    We will also provide an Eclipse client, which is capable of modeling and viewing Palo Databases. So, yes, you will be able to model in Eclipse as well as in Excel. You can already view a few screenshots to get a first impression. You can also scan the Javadocs for the to be published Java API.

    Please refer to the website for more information on the Java API and Java Tools that will be provided.

    Best Regards,

  • RE: Java & Eclipse

    Hi Michael

    Thats fantastic, a nice api and a set of platform independant tools.

    Just a couple of questions, I noticed on a screen shot for the sales cube you were displayed data with a Euro symbol. However I can't see any functions in the C api or methods in the javadocs which would appear as though they contain this information.
    Is there a cell note function, or something equivalent which I have overlooked?

    Also what is ElementNodeVistor, I dont undertand this. Could you perhaps explain it?

  • RE: Java & Eclipse

    Hi Dave,

    let me briefly comment on the ElementNode visitor. It is a callback signature which is invoked for each element in a dimension when you invoke Dimension.visitElementTree(). Infact you are dealing with ElementNodes here, which are wrapped around the elements. There is exactly one ElementNode per Element as long as Elements aren't consolidated multiple times.

    The visitor is like in the GoF Visitor pattern.

    Anyhow, it is probably best to jump-start the explanation with a task that could be done using the visitor....

    Suppose you wanted to get a textual dump of the Products Dimension from the "Demo"-Database that looks like this:

    Source Code

    1. All Products
    2. Stationary PC's
    3. Desktop L
    4. Desktop Pro
    5. Desktop Pro XL
    6. Desktop High XL
    7. Desktop High XQ
    8. Server Power XC
    9. Server Power TT
    10. Server Dual C
    11. Server Dual XC
    12. Server Lion RX
    13. Portable PC's
    14. Notebook SX
    15. Notebook GT
    16. Notebook LXC
    17. Notebook TT
    18. Notebook SL
    19. Subnote SL
    20. Subnote XK
    21. Monitors
    22. TFT Monitor XA
    23. TFT Monitor TL
    24. TFT Monitor XP
    25. Peripherals
    26. Wireless Mouse XT
    27. Optical Mouse TS
    28. Laptop Mouse S
    29. Keyboard XX
    30. Keyboard GT
    Display All

    (Ignore the line numbers, this is console-output, not code, but i couldn't paste it as such in the forum).

    Note that the dump reflects the hierarchy of the elements as given by the way they are consolidated. That means in order to get such a dump one would need to traverse the tree of elements in pre-order (visiting nodes before their children).

    Now one could do that by using the methods from the Element class and traversing the results of getChildren() recursively.

    The method Dimension.visitElementTree() is simply a short-hand convenient way of doing this pre-order traversal. As each node is encountered the user-specified callback of type ElementNodeVisitor is invoked and one doesn't need to bother with implementing the recursion anymore.

    Here goes the example code that produces the above dump for a given Dimension ...

    Source Code

    1. /**
    2. * This method will dump a textual representation of the consolidation-tree
    3. * of the given dimension.
    4. * @param dimension the dimension to dump.
    5. */
    6. private static void dumpDimensionHierarchy(Dimension dimension)
    7. {
    8. System.err.println ("dumping dimension '" +
    9. dimension.getName() + "' in database '" +
    10. dimension.getDatabase().getName() + "' ...");
    11. // the following code will "visit" the consolidation tree, that means
    12. // each node in the consolidation tree is processed in pre-order and
    13. // user-supplied callback of type ElementNodeVisitor is invoked
    14. // for each encountered node.
    15. dimension.visitElementTree(new ElementNodeVisitor() {
    16. public void visit(ElementNode elementNode, ElementNode parent)
    17. {
    18. // Retrieve the element nested in the current ElementNode
    19. Element element = elementNode.getElement();
    20. // Get depth
    21. int depth = element.getDepth();
    22. // indent according to depth
    23. for (int i = 0; i < depth; ++i)
    24. System.err.print(" ");
    25. System.err.println(element.getName());
    26. }
    27. });
    28. }
    Display All

    Documentation is already updated and wasn't any clear about this in the past. This example will also be included in the list of examples. This will be available with the next release only though. That is why i am posting this example code here.

    Hope this helps for now.

    Regards from Cologne,
    Stepan Rutz, Tensegrity-Software
  • RE: Java & Eclipse

    Hi Dave,

    regarding the question with the €-sign. That has just been statically inserted for testing purposes within the cube browser or pivoting view. Number formatting will not be a part of the Eclipse Client for now and we will display just plain number or strings in the final version.