Re: Creating multiple datamaps on the fly

From: Andrey Razumovsky (razumovsky.andre..mail.com)
Date: Thu Jun 04 2009 - 07:21:54 EDT

  • Next message: Borut Bolčina: "Re: Cayenne 3.0M6 released"

    Hi,

    I'm not sure that I correctly understood your problem, but cloning datamap
    is definitely possible. Alas, I don't know about any ready methods for that.
    You can either clone DataMap manually (i.e. create new map with new name,
    copy properties from original map, put there entities etc. with new names
    and then attach it to domain) or clone whole datamap via serialization and
    then change names of its "entries". Sort of second way is implemented in
    modeler's PasteAction.paste(...). Note that entity names must be unique in
    whole DataDomain.

    Andrey

    2009/6/4 Lawrence Gerstley <lawger..mail.com>

    > Hello,
    >
    > I'm trying to create multiple DataMaps and attach them to my DataDomain on
    > the fly in an application. The DataMap itself that I created with the
    > modeler is fine, but I want to be able to create new ones on demand to point
    > to a new table set in my db. So, my DataMap might consist of DbEntities
    > whose prefixes all start with "lba1_". I can iterate through the map
    > attached to the domain loaded up like so:
    > ================================================================
    > for (DbEntity entity : currentMap.getDbEntities()) {
    > if (entity.getName().indexOf("_") > 0) {
    > entity.setName(entity.getName().replaceFirst(".*_", instancePrefix +
    > "_"));
    > }
    > }
    > ================================================================
    > I'd like to clone the DataMap and then iterate through it with the code
    > above, and then add that DataMap to the DataDomain. Is that possible?
    >
    > Thanks,
    >
    > Lawrence
    >
    >



    This archive was generated by hypermail 2.0.0 : Thu Jun 04 2009 - 07:22:30 EDT