From 0a52ca4bc15b0045163cb77aa01b5bf8cfa4089b Mon Sep 17 00:00:00 2001 From: lukaseder Date: Mon, 20 Apr 2015 15:46:17 +0200 Subject: [PATCH] Synchronise with pro repository --- jOOQ-examples/jOOQ-academy/.project | 29 -- .../util/vertabelo/VertabeloAPIDatabase.java | 170 ------ .../util/vertabelo/VertabeloXMLDatabase.java | 484 ------------------ .../VertabeloXMLTableDefinition.java | 184 ------- .../main/resources/xjb/vertabelo/binding.xjb | 27 - .../src/main/resources/xsd/vertabelo-2.1.xsd | 439 ---------------- jOOQ/.project | 30 -- .../java/org/jooq/impl/IdentityConverter.java | 84 --- 8 files changed, 1447 deletions(-) delete mode 100644 jOOQ-examples/jOOQ-academy/.project delete mode 100644 jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloAPIDatabase.java delete mode 100644 jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLDatabase.java delete mode 100644 jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLTableDefinition.java delete mode 100644 jOOQ-meta/src/main/resources/xjb/vertabelo/binding.xjb delete mode 100644 jOOQ-meta/src/main/resources/xsd/vertabelo-2.1.xsd delete mode 100644 jOOQ/.project delete mode 100644 jOOQ/src/main/java/org/jooq/impl/IdentityConverter.java diff --git a/jOOQ-examples/jOOQ-academy/.project b/jOOQ-examples/jOOQ-academy/.project deleted file mode 100644 index a4a6f150d8..0000000000 --- a/jOOQ-examples/jOOQ-academy/.project +++ /dev/null @@ -1,29 +0,0 @@ - - - jOOQ-academy - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.maven.ide.eclipse.maven2Builder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.maven.ide.eclipse.maven2Nature - org.eclipse.m2e.core.maven2Nature - org.eclipse.jdt.core.javanature - - diff --git a/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloAPIDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloAPIDatabase.java deleted file mode 100644 index aaade7d7db..0000000000 --- a/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloAPIDatabase.java +++ /dev/null @@ -1,170 +0,0 @@ -/** - * Copyright (c) 2009-2015, Data Geekery GmbH (http://www.datageekery.com) - * All rights reserved. - * - * This work is dual-licensed - * - under the Apache Software License 2.0 (the "ASL") - * - under the jOOQ License and Maintenance Agreement (the "jOOQ License") - * ============================================================================= - * You may choose which license applies to you: - * - * - If you're using this work with Open Source databases, you may choose - * either ASL or jOOQ License. - * - If you're using this work with at least one commercial database, you must - * choose jOOQ License - * - * For more information, please visit http://www.jooq.org/licenses - * - * Apache Software License 2.0: - * ----------------------------------------------------------------------------- - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * jOOQ License and Maintenance Agreement: - * ----------------------------------------------------------------------------- - * Data Geekery grants the Customer the non-exclusive, timely limited and - * non-transferable license to install and use the Software under the terms of - * the jOOQ License and Maintenance Agreement. - * - * This library is distributed with a LIMITED WARRANTY. See the jOOQ License - * and Maintenance Agreement for more details: http://www.jooq.org/licensing - */ -package org.jooq.util.vertabelo; - -import java.io.BufferedReader; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.UnsupportedEncodingException; -import java.net.MalformedURLException; -import java.net.URL; - -import javax.net.ssl.HttpsURLConnection; -import javax.xml.bind.DatatypeConverter; -import javax.xml.bind.JAXB; - -import org.jooq.tools.JooqLogger; -import org.jooq.tools.StringUtils; -import org.jooq.util.vertabelo.jaxb.DatabaseModel; - -/** - * The Vertabelo API Database - * - * @author Michał Kołodziejski - */ -public class VertabeloAPIDatabase extends VertabeloXMLDatabase { - - private static final JooqLogger log = JooqLogger.getLogger(VertabeloAPIDatabase.class); - - protected static final String API_URL_PREFIX = "https://my.vertabelo.com/api/xml/"; - - // codegen properties - protected static final String API_TOKEN_PARAM = "api-token"; - protected static final String MODEL_ID_PARAM = "model-id"; - protected static final String TAG_NAME_PARAM = "tag-name"; - - protected String apiToken; - protected String modelId; - protected String tagName; - - - @Override - protected DatabaseModel databaseModel() { - if(databaseModel == null) { - readSettings(); - String xml = getXMLFromAPI(); - - ByteArrayInputStream stream; - try { - stream = new ByteArrayInputStream(xml.getBytes("UTF-8")); - } - catch (UnsupportedEncodingException e) { - throw new RuntimeException(e); - } - databaseModel = JAXB.unmarshal(stream, DatabaseModel.class); - } - - return databaseModel; - } - - - protected void readSettings() { - apiToken = getProperties().getProperty(API_TOKEN_PARAM); - if (StringUtils.isEmpty(apiToken)) { - throw new IllegalStateException("Lack of \"" + API_TOKEN_PARAM + "\" parameter."); - } - - - modelId = getProperties().getProperty(MODEL_ID_PARAM); - if (StringUtils.isEmpty(modelId)) { - throw new IllegalStateException("Lack of \"" + MODEL_ID_PARAM + "\" parameter."); - } - - tagName = getProperties().getProperty(TAG_NAME_PARAM); - } - - - protected String getXMLFromAPI() { - String xml = null; - - String apiUrl = getApiUrl(); - - try { - log.info("Creating connection to Vertabelo server..."); - - URL url = new URL(apiUrl); - HttpsURLConnection connection = (HttpsURLConnection) url.openConnection(); - connection.setConnectTimeout(5000); - connection.setReadTimeout(5000); - - // authorization data - String encodedAuthData = DatatypeConverter.printBase64Binary((apiToken + ":").getBytes()); - connection.addRequestProperty("Authorization", "Basic " + encodedAuthData); - - - // do request - int responseCode=connection.getResponseCode(); - log.info("Response code: " + responseCode); - - if (responseCode != HttpsURLConnection.HTTP_OK) { - throw new RuntimeException("Request failed with status code: " + responseCode); - } - - // read response - String response = ""; - String line; - BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream())); - while ((line = br.readLine()) != null) { - response += line; - } - - xml = response; - - } catch (MalformedURLException e) { - throw new RuntimeException(e); - } catch (IOException e) { - throw new RuntimeException(e); - } - - return xml; - } - - - protected String getApiUrl() { - String apiUrl = API_URL_PREFIX + modelId; - if(!StringUtils.isEmpty(tagName)) { - apiUrl += "/" + tagName; - } - - return apiUrl; - } -} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLDatabase.java deleted file mode 100644 index e16d2724ea..0000000000 --- a/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLDatabase.java +++ /dev/null @@ -1,484 +0,0 @@ -/** - * Copyright (c) 2009-2015, Data Geekery GmbH (http://www.datageekery.com) - * All rights reserved. - * - * This work is dual-licensed - * - under the Apache Software License 2.0 (the "ASL") - * - under the jOOQ License and Maintenance Agreement (the "jOOQ License") - * ============================================================================= - * You may choose which license applies to you: - * - * - If you're using this work with Open Source databases, you may choose - * either ASL or jOOQ License. - * - If you're using this work with at least one commercial database, you must - * choose jOOQ License - * - * For more information, please visit http://www.jooq.org/licenses - * - * Apache Software License 2.0: - * ----------------------------------------------------------------------------- - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * jOOQ License and Maintenance Agreement: - * ----------------------------------------------------------------------------- - * Data Geekery grants the Customer the non-exclusive, timely limited and - * non-transferable license to install and use the Software under the terms of - * the jOOQ License and Maintenance Agreement. - * - * This library is distributed with a LIMITED WARRANTY. See the jOOQ License - * and Maintenance Agreement for more details: http://www.jooq.org/licensing - */ -package org.jooq.util.vertabelo; - -import java.io.File; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import javax.xml.bind.JAXB; - -import org.jooq.DSLContext; -import org.jooq.SQLDialect; -import org.jooq.impl.DSL; -import org.jooq.tools.JooqLogger; -import org.jooq.tools.StringUtils; -import org.jooq.util.AbstractDatabase; -import org.jooq.util.ArrayDefinition; -import org.jooq.util.CheckConstraintDefinition; -import org.jooq.util.ColumnDefinition; -import org.jooq.util.DataTypeDefinition; -import org.jooq.util.DefaultCheckConstraintDefinition; -import org.jooq.util.DefaultDataTypeDefinition; -import org.jooq.util.DefaultRelations; -import org.jooq.util.DefaultSequenceDefinition; -import org.jooq.util.EnumDefinition; -import org.jooq.util.PackageDefinition; -import org.jooq.util.RoutineDefinition; -import org.jooq.util.SchemaDefinition; -import org.jooq.util.SequenceDefinition; -import org.jooq.util.TableDefinition; -import org.jooq.util.UDTDefinition; -import org.jooq.util.vertabelo.jaxb.AlternateKey; -import org.jooq.util.vertabelo.jaxb.AlternateKeyColumn; -import org.jooq.util.vertabelo.jaxb.Column; -import org.jooq.util.vertabelo.jaxb.DatabaseModel; -import org.jooq.util.vertabelo.jaxb.Property; -import org.jooq.util.vertabelo.jaxb.Reference; -import org.jooq.util.vertabelo.jaxb.ReferenceColumn; -import org.jooq.util.vertabelo.jaxb.Sequence; -import org.jooq.util.vertabelo.jaxb.Table; -import org.jooq.util.vertabelo.jaxb.TableCheck; -import org.jooq.util.vertabelo.jaxb.View; -import org.jooq.util.xml.XMLDatabase; - -/** - * The Vertabelo XML Database - * - * @author Michał Kołodziejski - */ -public class VertabeloXMLDatabase extends AbstractDatabase { - - interface TableOperation { - void invoke(Table table, String schemaName); - } - - interface ViewOperation { - void invoke(View view, String schemaName); - } - - private static final JooqLogger log = JooqLogger.getLogger(VertabeloXMLDatabase.class); - - // XML additional properties - private static final String SCHEMA_ADDITIONAL_PROPERTY_NAME = "Schema"; - private static final String PK_ADDITIONAL_PROPERTY_NAME = "Primary key name"; - - - protected DatabaseModel databaseModel; - - protected DatabaseModel databaseModel() { - if(databaseModel == null) { - databaseModel = JAXB.unmarshal(new File(getProperties().getProperty(XMLDatabase.P_XML_FILE)), DatabaseModel.class); - } - - return databaseModel; - } - - - @Override - protected DSLContext create0() { - SQLDialect dialect = SQLDialect.DEFAULT; - - try { - dialect = SQLDialect.valueOf(getProperties().getProperty(XMLDatabase.P_DIALECT)); - } - catch (Exception ignore) {} - - return DSL.using(dialect); - } - - - @Override - protected void loadPrimaryKeys(final DefaultRelations relations) throws SQLException { - - filterTablesBySchema(databaseModel().getTables(), new TableOperation() { - @Override - public void invoke(Table table, String schemaName) { - - SchemaDefinition schema = getSchema(schemaName); - TableDefinition tableDefinition = getTable(schema, table.getName()); - - if (tableDefinition != null) { - String pkName = getTablePkName(table); - - // iterate through all columns and find PK columns - for (Column column : table.getColumns()) { - if (column.isPK()) { - relations.addPrimaryKey(pkName, tableDefinition.getColumn(column.getName())); - } - } - } - } - }); - } - - - private String getTablePkName(Table table) { - Property pkAdditionalProperty = VertabeloXMLDatabase.findAdditionalProperty(PK_ADDITIONAL_PROPERTY_NAME, - table.getProperties()); - String pkName = VertabeloXMLDatabase.getAdditionalPropertyValueOrEmpty(pkAdditionalProperty); - if (StringUtils.isEmpty(pkName)) { - pkName = table.getName().toUpperCase() + "_PK"; - } - return pkName; - } - - - @Override - protected void loadUniqueKeys(final DefaultRelations relations) throws SQLException { - - filterTablesBySchema(databaseModel().getTables(), new TableOperation() { - @Override - public void invoke(Table table, String schemaName) { - SchemaDefinition schema = getSchema(schemaName); - TableDefinition tableDefinition = getTable(schema, table.getName()); - - if (tableDefinition != null) { - // iterate through all UNIQUE keys for this table - for (AlternateKey alternateKey : table.getAlternateKeys()) { - - // iterate through all columns of this key - for (AlternateKeyColumn alternateKeyColumn : alternateKey.getColumns()) { - Column column = (Column) alternateKeyColumn.getColumn(); - relations.addUniqueKey(alternateKey.getName(), tableDefinition.getColumn(column.getName())); - } - - } - } - } - }); - - } - - - @Override - protected void loadForeignKeys(final DefaultRelations relations) throws SQLException { - - for (final Reference reference : databaseModel().getReferences()) { - final Table pkTable = (Table) reference.getPKTable(); - final Table fkTable = (Table) reference.getFKTable(); - - filterTablesBySchema(Arrays.asList(pkTable), new TableOperation() { - @Override - public void invoke(Table table, String schemaName) { - SchemaDefinition schema = getSchema(schemaName); - TableDefinition pkTableDefinition = getTable(schema, pkTable.getName()); - TableDefinition fkTableDefinition = getTable(schema, fkTable.getName()); - - // we need to find unique key among PK and all alternate keys... - String uniqueKeyName = findUniqueConstraintNameForReference(reference); - if(uniqueKeyName == null) { - // no matching key - ignore this foreign key - return; - } - - for (ReferenceColumn referenceColumn : reference.getReferenceColumns()) { - Column fkColumn = (Column) referenceColumn.getFKColumn(); - ColumnDefinition fkColumnDefinition = fkTableDefinition.getColumn(fkColumn.getName()); - - relations.addForeignKey( - reference.getName(), - uniqueKeyName, - fkColumnDefinition, - pkTableDefinition.getSchema()); - } - } - }); - - } - } - - - private String findUniqueConstraintNameForReference(Reference reference) { - // list of referenced columns - List uniqueKeyColumns = new ArrayList(); - for (ReferenceColumn referenceColumn : reference.getReferenceColumns()) { - uniqueKeyColumns.add((Column) referenceColumn.getPKColumn()); - } - - - // list of PK columns - Table pkTable = (Table) reference.getPKTable(); - List pkColumns = new ArrayList(); - for (Column column : pkTable.getColumns()) { - if (column.isPK()) { - pkColumns.add(column); - } - } - - if (uniqueKeyColumns.equals(pkColumns)) { - // PK matches FK - log.info("Primary key constraint matches foreign key: " + reference.getName()); - return getTablePkName((Table) reference.getPKTable()); - } - - // need to check alternate keys - for (AlternateKey alternateKey : pkTable.getAlternateKeys()) { - List akColumns = new ArrayList(); - for (AlternateKeyColumn column : alternateKey.getColumns()) { - akColumns.add((Column) column.getColumn()); - } - - if (uniqueKeyColumns.equals(akColumns)) { - // AK matches FK - log.info("Alternate key constraint matches foreign key: " + reference.getName()); - return alternateKey.getName(); - } - } - - // no match - log.info("No matching unique constraint for foreign key: " + reference.getName()); - return null; - } - - - - @Override - protected void loadCheckConstraints(final DefaultRelations relations) throws SQLException { - - filterTablesBySchema(databaseModel().getTables(), new TableOperation() { - @Override - public void invoke(Table table, String schemaName) { - SchemaDefinition schema = getSchema(schemaName); - TableDefinition tableDefinition = getTable(schema, table.getName()); - - if (tableDefinition != null) { - - // iterate through all table checks - for (TableCheck tableCheck : table.getTableChecks()) { - CheckConstraintDefinition checkConstraintDefinition = new DefaultCheckConstraintDefinition( - schema, - tableDefinition, - tableCheck.getName(), - tableCheck.getCheckExpression()); - - relations.addCheckConstraint(tableDefinition, checkConstraintDefinition); - } - - // iterate through all columns and find columns with checks - for (Column column : table.getColumns()) { - if (! StringUtils.isBlank(column.getCheckExpression())) { - CheckConstraintDefinition checkConstraintDefinition = new DefaultCheckConstraintDefinition( - schema, - tableDefinition, - table.getName() + "_" + column.getName() + "_check", - column.getCheckExpression()); - - relations.addCheckConstraint(tableDefinition, checkConstraintDefinition); - } - } - } - } - }); - } - - - @Override - protected List getSchemata0() throws SQLException { - List result = new ArrayList(); - List schemaNames = new ArrayList(); - - // search in tables - for (Table table : databaseModel().getTables()) { - Property additionalProperty = findAdditionalProperty(SCHEMA_ADDITIONAL_PROPERTY_NAME, table.getProperties()); - addUniqueSchemaName(additionalProperty, schemaNames); - } - - // search in views - for (View view : databaseModel().getViews()) { - Property additionalProperty = findAdditionalProperty(SCHEMA_ADDITIONAL_PROPERTY_NAME, view.getProperties()); - addUniqueSchemaName(additionalProperty, schemaNames); - } - - - // transform - for (String schemaName : schemaNames) { - result.add(new SchemaDefinition(this, schemaName, null)); - } - - return result; - } - - - private void addUniqueSchemaName(Property additionalProperty, List schemaNames) { - String schemaName = ""; // default to empty string - if (additionalProperty != null) { - // additional property is set - schemaName = additionalProperty.getValue(); - } - - if (!schemaNames.contains(schemaName)) { - schemaNames.add(schemaName); - } - } - - - @Override - protected List getSequences0() throws SQLException { - List result = new ArrayList(); - - for (Sequence sequence : databaseModel().getSequences()) { - Property additionalProperty = VertabeloXMLDatabase.findAdditionalProperty(SCHEMA_ADDITIONAL_PROPERTY_NAME, - sequence.getProperties()); - String schemaName = VertabeloXMLDatabase.getAdditionalPropertyValueOrEmpty(additionalProperty); - - if (getInputSchemata().contains(schemaName)) { - SchemaDefinition schema = getSchema(schemaName); - - DataTypeDefinition type = new DefaultDataTypeDefinition( - this, - schema, - "BIGINT" - ); - - result.add(new DefaultSequenceDefinition(schema, sequence.getName(), type)); - } - } - - return result; - } - - - @Override - protected List getTables0() throws SQLException { - final List result = new ArrayList(); - - // tables - filterTablesBySchema(databaseModel().getTables(), new TableOperation() { - @Override - public void invoke(Table table, String schemaName) { - SchemaDefinition schema = getSchema(schemaName); - result.add(new VertabeloXMLTableDefinition(schema, table)); - } - }); - - // views - filterViewsBySchema(databaseModel().getViews(), new ViewOperation() { - @Override - public void invoke(View view, String schemaName) { - SchemaDefinition schema = getSchema(schemaName); - result.add(new VertabeloXMLTableDefinition(schema, view)); - } - }); - - return result; - } - - - @Override - protected List getEnums0() { - List result = new ArrayList(); - return result; - } - - @Override - protected List getUDTs0() { - List result = new ArrayList(); - return result; - } - - @Override - protected List getArrays0() { - List result = new ArrayList(); - return result; - } - - @Override - protected List getRoutines0() { - List result = new ArrayList(); - return result; - } - - @Override - protected List getPackages0() { - List result = new ArrayList(); - return result; - } - - - protected void filterTablesBySchema(List tables, TableOperation operation) { - for (Table table : tables) { - Property schemaAdditionalProperty = VertabeloXMLDatabase.findAdditionalProperty(SCHEMA_ADDITIONAL_PROPERTY_NAME, - table.getProperties()); - String schemaName = VertabeloXMLDatabase.getAdditionalPropertyValueOrEmpty(schemaAdditionalProperty); - - if (getInputSchemata().contains(schemaName)) { - - operation.invoke(table, schemaName); - - } - } - } - - - protected void filterViewsBySchema(List views, ViewOperation operation) { - for (View view : views) { - Property schemaAdditionalProperty = VertabeloXMLDatabase.findAdditionalProperty(SCHEMA_ADDITIONAL_PROPERTY_NAME, - view.getProperties()); - String schemaName = VertabeloXMLDatabase.getAdditionalPropertyValueOrEmpty(schemaAdditionalProperty); - - if (getInputSchemata().contains(schemaName)) { - - operation.invoke(view, schemaName); - - } - } - } - - - public static Property findAdditionalProperty(String name, List properties) { - for (Property property : properties) { - if (property.getName().equalsIgnoreCase(name)) { - return property; - } - } - return null; - } - - public static String getAdditionalPropertyValueOrEmpty(Property additionalProperty) { - if (additionalProperty != null) { - return additionalProperty.getValue(); - } - return ""; - } -} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLTableDefinition.java deleted file mode 100644 index a4ca03d877..0000000000 --- a/jOOQ-meta/src/main/java/org/jooq/util/vertabelo/VertabeloXMLTableDefinition.java +++ /dev/null @@ -1,184 +0,0 @@ -/** - * Copyright (c) 2009-2015, Data Geekery GmbH (http://www.datageekery.com) - * All rights reserved. - * - * This work is dual-licensed - * - under the Apache Software License 2.0 (the "ASL") - * - under the jOOQ License and Maintenance Agreement (the "jOOQ License") - * ============================================================================= - * You may choose which license applies to you: - * - * - If you're using this work with Open Source databases, you may choose - * either ASL or jOOQ License. - * - If you're using this work with at least one commercial database, you must - * choose jOOQ License - * - * For more information, please visit http://www.jooq.org/licenses - * - * Apache Software License 2.0: - * ----------------------------------------------------------------------------- - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * jOOQ License and Maintenance Agreement: - * ----------------------------------------------------------------------------- - * Data Geekery grants the Customer the non-exclusive, timely limited and - * non-transferable license to install and use the Software under the terms of - * the jOOQ License and Maintenance Agreement. - * - * This library is distributed with a LIMITED WARRANTY. See the jOOQ License - * and Maintenance Agreement for more details: http://www.jooq.org/licensing - */ -package org.jooq.util.vertabelo; - -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.List; - -import org.jooq.DataType; -import org.jooq.impl.DefaultDataType; -import org.jooq.tools.StringUtils; -import org.jooq.util.AbstractTableDefinition; -import org.jooq.util.ColumnDefinition; -import org.jooq.util.DataTypeDefinition; -import org.jooq.util.DefaultColumnDefinition; -import org.jooq.util.DefaultDataTypeDefinition; -import org.jooq.util.SchemaDefinition; -import org.jooq.util.vertabelo.jaxb.Column; -import org.jooq.util.vertabelo.jaxb.Property; -import org.jooq.util.vertabelo.jaxb.Table; -import org.jooq.util.vertabelo.jaxb.View; -import org.jooq.util.vertabelo.jaxb.ViewColumn; - -/** - * Definition of the Vertabelo XML Table - * - * @author Michał Kołodziejski - */ -public class VertabeloXMLTableDefinition extends AbstractTableDefinition { - - protected Table table; - protected View view; - - public VertabeloXMLTableDefinition(SchemaDefinition schema, Table table) { - super(schema, table.getName(), ""); - - this.table = table; - } - - public VertabeloXMLTableDefinition(SchemaDefinition schema, View view) { - super(schema, view.getName(), ""); - - this.view = view; - } - - - @Override - protected List getElements0() throws SQLException { - if(table != null) { - // table - return getTableElements(); - - } else { - // view - return getViewElements(); - } - } - - - protected List getTableElements() { - List result = new ArrayList(); - - String schemaName = getSchemaName(); - SchemaDefinition schema = getDatabase().getSchema(schemaName); - - int position = 0; - for(Column column : table.getColumns()) { - ++position; - - // convert data type - DataType dataType = DefaultDataType.getDataType(getDialect(), column.getType()); - - DataTypeDefinition type = new DefaultDataTypeDefinition( - getDatabase(), - schema, - dataType.getTypeName(), - dataType.hasLength() ? dataType.length() : null, - dataType.hasPrecision() ? dataType.precision() : null, - dataType.hasScale() ? dataType.scale() : null, - column.isNullable(), - !StringUtils.isEmpty(column.getDefaultValue())); - - ColumnDefinition columnDefinition = new DefaultColumnDefinition( - this, - column.getName(), - position, - type, - false, - column.getDescription()); - - result.add(columnDefinition); - } - - return result; - } - - - protected List getViewElements() { - List result = new ArrayList(); - - String schemaName = getSchemaName(); - SchemaDefinition schema = getDatabase().getSchema(schemaName); - - int position = 0; - for(ViewColumn column : view.getViewColumns()) { - ++position; - - // convert data type - DataType dataType = DefaultDataType.getDataType(getDialect(), column.getType()); - - DataTypeDefinition type = new DefaultDataTypeDefinition( - getDatabase(), - schema, - dataType.getTypeName(), - dataType.hasLength() ? dataType.length() : null, - dataType.hasPrecision() ? dataType.precision() : null, - dataType.hasScale() ? dataType.scale() : null, - true, - false); - - ColumnDefinition columnDefinition = new DefaultColumnDefinition( - this, - column.getName(), - position, - type, - false, - column.getDescription()); - - result.add(columnDefinition); - } - - return result; - } - - protected String getSchemaName() { - Property additionalProperty; - - if(table != null) { - additionalProperty = VertabeloXMLDatabase.findAdditionalProperty("Schema", table.getProperties()); - } else { - additionalProperty = VertabeloXMLDatabase.findAdditionalProperty("Schema", view.getProperties()); - } - - return VertabeloXMLDatabase.getAdditionalPropertyValueOrEmpty(additionalProperty); - } -} diff --git a/jOOQ-meta/src/main/resources/xjb/vertabelo/binding.xjb b/jOOQ-meta/src/main/resources/xjb/vertabelo/binding.xjb deleted file mode 100644 index 03fefad849..0000000000 --- a/jOOQ-meta/src/main/resources/xjb/vertabelo/binding.xjb +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/jOOQ-meta/src/main/resources/xsd/vertabelo-2.1.xsd b/jOOQ-meta/src/main/resources/xsd/vertabelo-2.1.xsd deleted file mode 100644 index f0fab2b7c1..0000000000 --- a/jOOQ-meta/src/main/resources/xsd/vertabelo-2.1.xsd +++ /dev/null @@ -1,439 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/jOOQ/.project b/jOOQ/.project deleted file mode 100644 index e9ebed2be4..0000000000 --- a/jOOQ/.project +++ /dev/null @@ -1,30 +0,0 @@ - - - jOOQ - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.maven.ide.eclipse.maven2Builder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.pde.PluginNature - org.maven.ide.eclipse.maven2Nature - org.eclipse.m2e.core.maven2Nature - org.eclipse.jdt.core.javanature - - diff --git a/jOOQ/src/main/java/org/jooq/impl/IdentityConverter.java b/jOOQ/src/main/java/org/jooq/impl/IdentityConverter.java deleted file mode 100644 index 3eb1ba3c12..0000000000 --- a/jOOQ/src/main/java/org/jooq/impl/IdentityConverter.java +++ /dev/null @@ -1,84 +0,0 @@ -/** - * Copyright (c) 2009-2015, Data Geekery GmbH (http://www.datageekery.com) - * All rights reserved. - * - * This work is dual-licensed - * - under the Apache Software License 2.0 (the "ASL") - * - under the jOOQ License and Maintenance Agreement (the "jOOQ License") - * ============================================================================= - * You may choose which license applies to you: - * - * - If you're using this work with Open Source databases, you may choose - * either ASL or jOOQ License. - * - If you're using this work with at least one commercial database, you must - * choose jOOQ License - * - * For more information, please visit http://www.jooq.org/licenses - * - * Apache Software License 2.0: - * ----------------------------------------------------------------------------- - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * jOOQ License and Maintenance Agreement: - * ----------------------------------------------------------------------------- - * Data Geekery grants the Customer the non-exclusive, timely limited and - * non-transferable license to install and use the Software under the terms of - * the jOOQ License and Maintenance Agreement. - * - * This library is distributed with a LIMITED WARRANTY. See the jOOQ License - * and Maintenance Agreement for more details: http://www.jooq.org/licensing - */ -package org.jooq.impl; - -import org.jooq.Converter; - -/** - * @author Lukas Eder - */ -class IdentityConverter implements Converter { - - /** - * Generated UID - */ - private static final long serialVersionUID = -1721687282753727624L; - private final Class type; - - IdentityConverter(Class type) { - this.type = type; - } - - @Override - public final T from(T t) { - return t; - } - - @Override - public final T to(T t) { - return t; - } - - @Override - public final Class fromType() { - return type; - } - - @Override - public final Class toType() { - return type; - } - - @Override - public String toString() { - return "IdentityConverter [" + type.getName() + "]"; - } -}