Jump to: navigation, search

Difference between revisions of "EclipseLink/Examples/DBWS/DBWSIntermediateIgnoreColumn"

Line 1: Line 1:
 
== Skip a database column so that is does not show up in generated schema ==
 
== Skip a database column so that is does not show up in generated schema ==
As seen in the [[EclipseLink/Examples/DBWS/DBWSIntermediateAttribute Intermediate example]], a user can provide a custom <code>NamingConventionTransformer</code>.
+
As seen in the [[../DBWSIntermediateAttribute Intermediate example]], a user can provide a custom <code>NamingConventionTransformer</code>.
 
The following <code>NamingConventionTransformer</code> will:
 
The following <code>NamingConventionTransformer</code> will:
 
* name the schema element '<tt>simple</tt>'
 
* name the schema element '<tt>simple</tt>'

Revision as of 13:53, 3 June 2009

Skip a database column so that is does not show up in generated schema

As seen in the EclipseLink/Examples/DBWS/DBWSIntermediateAttribute Intermediate example, a user can provide a custom NamingConventionTransformer. The following NamingConventionTransformer will:

  • name the schema element 'simple'
  • make the element names lowercase
  • skip the SINCE field
package foo.bar.blah;
 
import org.eclipse.persistence.tools.dbws.DefaultNamingConventionTransformer;
import static org.eclipse.persistence.tools.dbws.NamingConventionTransformer.ElementStyle.ELEMENT;
import static org.eclipse.persistence.tools.dbws.NamingConventionTransformer.ElementStyle.NONE;
 
public class MyNamingConventionTransformer extends DefaultNamingConventionTransformer {
 
    @Override
    public String generateSchemaAlias(String tableName) {
        return super.generateSchemaAlias("simple");
    }
 
    @Override
    public String generateElementAlias(String originalElementName) {
        return super.generateElementAlias(originalElementName.toLowerCase());
    }
 
    @Override
    public ElementStyle styleForElement(String elementName) {
        if ("since".equalsIgnoreCase(elementName)) {
            return NONE;
        }
        return ELEMENT;
    }
}