blob: f974d89401c1fb56b173f29e12ab860824cb8c82 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<faqs xmlns="http://maven.apache.org/FML/1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/FML/1.0.1 http://maven.apache.org/xsd/fml-1.0.1.xsd"
title="What's new in MetaModel 2.0" toplink="false">
<part id="features">
<title>New features</title>
<faq id="update_api">
<question>API for performing updates (write operations) on data</question>
<answer>
<p>The major story for MetaModel 2.0 has been to enable writing of data to your
datastores. To allow this we've designed an API for updating data that has high
isolation properties, provides fluent update builders and works cross different
datastore backends.</p>
<ul>
<li>There's an example of the new API on the
<a href="example_inserting_data.html">Inserting data</a> example page.</li>
<li>And the API documentation for the new <a href="apidocs/org/eobjects/metamodel/UpdateableDataContext.html">UpdateableDataContext</a> interface also describes the mechanism.</li>
</ul>
<p>The new update API supports creating tables and inserting records into tables.</p>
</answer>
</faq>
<faq id="update_csv_excel_jdbc">
<question>Create data in CSV files, Excel spreadsheets and JDBC databases</question>
<answer>
<p>The data updating API has been implemented for CSV files, Excel spreadsheets
and JDBC databases. While we want to provide implementations for the remaining
datastores also, these are our first set which
covers the most popular datastore types.</p>
</answer>
</faq>
<faq id="styling">
<question>Support for visual styling of values</question>
<answer>
<p>Some datastores (Excel in particular) support visual styling of values. In MetaModel
2.0 we include the ability to get styling attributes of values in order to see eg. if
values are colored, written in bold text or have other special visual representations.
Styling in MetaModel is compatible with Cascading Style Sheets capabilities, so it allows
for easy utilization in web applications and the like.</p>
<p>The styling information is available in the Row interface, which now includes a number
of getStyle(...) methods.</p>
</answer>
</faq>
</part>
<part id="api">
<title>Changes to the existing API</title>
<faq id="packages_structure">
<question>Modularization of packages</question>
<answer>
<p>The packages in MetaModel have been slightly revised. Each datastore
module now has it's own package, such as <i>org.eobjects.metamodel.jdbc</i>
and <i>org.eobjects.metamodel.csv</i>.</p>
<p>If you've used the DataContextFactory to retrieve your DataContexts,
then there should be no need for changing consuming code.</p>
</answer>
</faq>
<faq id="in_operator">
<question>Use of IN operator</question>
<answer>
<p>For the first time in MetaModel's history, we've added an operator, namely IN.</p>
<p>IN works in MetaModel like it works in SQL. It allows you to define an array or collection
of values that you wish to use in a WHERE clause, and set a filter that includes any record
where the value of the record match with either of the values in your IN set.</p>
</answer>
</faq>
<faq id="core_and_querypostprocessor_merge">
<question>Core and Querypostprocessor modules have been merged</question>
<answer>
<p>The two modules "MetaModel-core" and "MetaModel-querypostprocessor" have been merged,
and are now just "MetaModel-core". The reason for this was that there was a common
dependency for both modules by all other modules and also a strong interdependency
between the two. For the sake of managability and ease for our contributors, the two
modules are now merged.</p>
</answer>
</faq>
</part>
</faqs>