metamodel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kasper Sørensen <>
Subject Re: GitHub release: a "bud" of Apache MM to C# (.Net Core)
Date Sun, 16 Jul 2017 03:21:59 GMT
I notice that there is not yet a port of QueryPostprocessDataContext, which
is IMO critical to implement any connector. I think having that class (and
it's dependencies, for instance MetaModelHelper) ported is key for us to
push ahead with the rest of the details. As such I feel like many of the
interfaces that are there now can be easily be manually replicated and
maybe in some cases re-thought a bit for .NET, as well as for the fact that
there is no backwards compatibility concern in this port.

Interfaces like Func, Action and Ref are certainly not needed in .NET, and
we should not include it. They're only there in the Java version for
backwards compatibility to the pre-Java 8 days.

2017-07-15 10:40 GMT-07:00 Kasper Sørensen <>:

> OK so I can tell you this much: I succesfully built the project with
> "dotnet restore" and "dotnet build". Great work, I see there's a lot of
> code in here :-)
> Right now it doesn't contain any working DataContext implementations,
> right? It would be kinda cool to have at least one so that we can start
> building unit tests and stuff like that. I'll probably get back to you with
> a PR for some small project structure things so that we have a place to add
> unit tests, a way to add more modules and so on.
> I haven't done an in-depth review of the code, but for me the most
> important thing is that there is something we can iterate on and the tests
> and such are instrumental in doing that.
> 2017-07-09 12:45 GMT-07:00 Michel Kern <>:
>> Hello
>> I've just published a "bud" of porting Apache MM from Java to C# (.Net
>> Core)
>> It's there:
>> bud
>> It is a limited subset (40 of the java source code files) but at least it
>> compiles without errors and
>> uses .Net Core as suggested by Jasper.
>> Please find below a copy of the attached README:
>> ************************************************************
>> ****************************
>> Foreword
>> ------------------------------
>> Here is a 'bud' version for a port of Apache MetaModel from Java to C#
>> (.Net Core). Please
>> notice that it is a very limited subset which has neen ported ATM.
>> Conversion Issues
>> ------------------------------
>> Even with a limited subset of the java source code files (40), I've
>> encountered a lot of
>> conversions issues, from the very straightforward (e.g. 'String s =
>> input_string.trim()'
>> becomes 'string s = input_string.Trim()'), to the ""equivalence
>> required"" (e.g. anonymous
>> implementation of interface, like in getComparable() method of
>> BooleanComparator class).
>> Anyway, I've tried to do my best (even if my choices may reveal erroneous
>> or even absurd),
>> at least to compile the 'conversion recipes' that I've crafted on the way
>> (they are
>> documented in doc/java2csharp_recipes.txt).
>> I've also provided a set of 'Helper classes' (under
>> apache_metamodel_dotnet_core/org/
>> apache/metamodel/j2cs), like class extensions (e.g. add a GetHashcode()
>> method to the
>> C# 'object' class), type replacement (e.g. Java's Number class converted
>> to 'CsNumber')
>> , etc..
>> Here is the result of my 'J2Cs' (Java To C#) adventures until now. In the
>> hope that it may
>> bring interest for validation and maybe a "child project" Apache
>> MetaModel which is a great
>> and innovative solution for interoperability in the Biotop of Data
>> Stores, well beyond the
>>  ODBC and ORM solutions IMHO.
>> Best Regards
>> Michel Kern (echopraxium on GitHub)

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message