You can extract an interface out of

CreateTableData

with getter/setter method place it in the API package and let the original CreateTableData implement that interface.

In fact to prevent this kind of issue its alwaysa a good idea in OSGi to have one api bundle that does only contain interfaces and Exception classes and keep the implementation in a seperate bundle that imports the interface classes. That way you can't accidently use internal classes in the API and the api bundle is the only one that is imported by users as well as implementation and there is no direct dependency on the implementor of that API.

Am 20.08.2013 19:42, schrieb Thomas Mueller:
Hi,

> About the OSGi manifest. If you don't want to expose more package in OSGi, how to use org.h2.api.TableEngine as it imports org.h2.table.TableBase ?

Yes, that's a good question :-) And the method passes a CreateTableData, which is in another package. There is one small change I will make, but this will not solve the problem: TableEngine should return a Table, not a TableBase. But to solve the dependency problem, yes I guess the easiest solution is to change the OSGi manifest. I don't like to do that, but currently don't see an alternative.

Regards,
Thomas



On Tuesday, August 20, 2013, Nicolas Fortin (OrbisGIS) wrote:

    Hello Martin Davis,

    As you advised I use the CoordinateSequenceFilter instead of
    iterating over vertices:
    
https://github.com/nicolas-f/h2database/commit/d168e04e061d470aebbc8749ce9663e97a7da18f

    About the OSGi manifest. If you don't want to expose more package
    in OSGi, how to use org.h2.api.TableEngine as it imports
    org.h2.table.TableBase ?

    Thanks for support

    -Nicolas Fortin
    Atelier SIG
    IRSTV FR CNRS 2488

    Le mardi 20 août 2013 03:16:10 UTC+2, Martin Davis a écrit :

        Sigh, yes, the JTS handling of Z values is a bit weak right
        now.  Hoping to improve this in redesign of the API - but it
        will break lots of things unfortunately.

        In absence of better metadata about the coordinate dimension
        the method of checking for Z = NaN is about all that can be
        done right now, .  Be aware however that
        Geometry.getCoordinates() is a bit inefficient for complex
        geometries, since it has to create one big array to hold all
        Coordinate values, and then traverse the geometry copying the
        references.  Using a CoordinateFilter would be more efficient.

-- You received this message because you are subscribed to the Google
    Groups "H2 Database" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected]
    <javascript:_e({}, 'cvml',
    'h2-database%[email protected]');>.
    To post to this group, send email to [email protected]
    <javascript:_e({}, 'cvml', '[email protected]');>.
    Visit this group at http://groups.google.com/group/h2-database.
    For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups "H2 Database" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to