[eclipselink] 03/08: Initial packaging updates
Andrew Ross
rockclimb-guest at alioth.debian.org
Sun Oct 27 22:21:15 UTC 2013
This is an automated email from the git hooks/post-receive script.
rockclimb-guest pushed a commit to branch master
in repository eclipselink.
commit 30e134bfc7397ef00ee1e28413ee5c0bb3d50be4
Author: Andrew Ross <ubuntu at rossfamily.co.uk>
Date: Fri Sep 27 22:59:14 2013 +0100
Initial packaging updates
---
debian/JPQL.g | 1576 ----------------------
debian/build.properties | 6 +-
debian/build.xml | 135 +-
debian/classpath-debian | 14 +-
debian/control | 32 +-
debian/excludesfiles/build | 9 +-
debian/excludesfiles/javadoc | 15 +-
debian/libeclipselink-java.classpath | 1 -
debian/libeclipselink-java.jlibs | 1 +
debian/libeclipselink-java.manifest | 16 +-
debian/patches/antlr32.diff | 79 --
debian/patches/cast.patch | 68 +
debian/patches/charset.patch | 11 +
debian/patches/disable_antlr3_embedded_copy.diff | 138 +-
debian/patches/disable_asm_embedded_copy.diff | 594 ++++----
debian/patches/java7-compat.diff | 20 -
debian/patches/series | 5 +-
debian/patches/typeparameters.patch | 11 +
debian/rules | 6 -
19 files changed, 618 insertions(+), 2119 deletions(-)
diff --git a/debian/JPQL.g b/debian/JPQL.g
deleted file mode 100644
index 4390602..0000000
--- a/debian/JPQL.g
+++ /dev/null
@@ -1,1576 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 1998, 2008 Oracle. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
- * which accompanies this distribution.
- * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- * and the Eclipse Distribution License is available at
- * http://www.eclipse.org/org/documents/edl-v10.php.
- *
- * Contributors:
- * Oracle - initial API and implementation from Oracle TopLink
- ******************************************************************************/
-
-// Added 20/12/2000 JED. Define the package for the class
-
-
-grammar JPQL;
-
-options {
- k = 3; // This is the number of tokens to look ahead to
- superClass = 'org.eclipse.persistence.internal.jpa.parsing.jpql.JPQLParser';
-}
-
-
-tokens {
- ABS='abs';
- ALL='all';
- AND='and';
- ANY='any';
- AS='as';
- ASC='asc';
- AVG='avg';
- BETWEEN='between';
- BOTH='both';
- BY='by';
- CASE='case';
- COALESCE='coalesce';
- CONCAT='concat';
- COUNT='count';
- CURRENT_DATE='current_date';
- CURRENT_TIME='current_time';
- CURRENT_TIMESTAMP='current_timestamp';
- DESC='desc';
- DELETE='delete';
- DISTINCT='distinct';
- ELSE='else';
- EMPTY='empty';
- END='end';
- ENTRY='entry';
- ESCAPE='escape';
- EXISTS='exists';
- FALSE='false';
- FETCH='fetch';
- FUNC='func';
- FROM='from';
- GROUP='group';
- HAVING='having';
- IN='in';
- INDEX='index';
- INNER='inner';
- IS='is';
- JOIN='join';
- KEY='key';
- LEADING='leading';
- LEFT='left';
- LENGTH='length';
- LIKE='like';
- LOCATE='locate';
- LOWER='lower';
- MAX='max';
- MEMBER='member';
- MIN='min';
- MOD='mod';
- NEW='new';
- NOT='not';
- NULL='null';
- NULLIF='nullif';
- OBJECT='object';
- OF='of';
- OR='or';
- ORDER='order';
- OUTER='outer';
- SELECT='select';
- SET='set';
- SIZE='size';
- SQRT='sqrt';
- SOME='some';
- SUBSTRING='substring';
- SUM='sum';
- THEN='then';
- TRAILING='trailing';
- TREAT='treat';
- TRIM='trim';
- TRUE='true';
- TYPE='type';
- UNKNOWN='unknown';
- UPDATE='update';
- UPPER='upper';
- VALUE='value';
- WHEN='when';
- WHERE='where';
-}
- at header {
- package org.eclipse.persistence.internal.jpa.parsing.jpql.antlr;
-
- import java.util.List;
- import java.util.ArrayList;
-
- import static org.eclipse.persistence.internal.jpa.parsing.NodeFactory.*;
- import org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierException;
- import org.eclipse.persistence.exceptions.JPQLException;
-}
-
- at lexer::header {
- package org.eclipse.persistence.internal.jpa.parsing.jpql.antlr;
-
- import org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierStartException;
-}
-
-
-
- at members{
- /** The root node of the parsed EJBQL query. */
- private Object queryRoot;
-
- /** Flag indicating whether aggregates are allowed. */
- private boolean aggregatesAllowed = false;
-
- /** */
- protected void setAggregatesAllowed(boolean allowed) {
- this.aggregatesAllowed = allowed;
- }
-
- /** */
- protected boolean aggregatesAllowed() {
- return aggregatesAllowed;
- }
-
- /** */
- protected void validateAbstractSchemaName(Token token)
- throws RecognitionException {
- String text = token.getText();
- if (!isValidJavaIdentifier(token.getText())) {
- throw new InvalidIdentifierException(token);
- }
- }
-
- /** */
- protected void validateAttributeName(Token token)
- throws RecognitionException {
- String text = token.getText();
- if (!isValidJavaIdentifier(token.getText())) {
- throw new InvalidIdentifierException(token);
- }
- }
-
- /** */
- protected boolean isValidJavaIdentifier(String text) {
- if ((text == null) || text.equals(""))
- return false;
-
- // check first char
- if (!Character.isJavaIdentifierStart(text.charAt(0)))
- return false;
-
- // check remaining characters
- for (int i = 1; i < text.length(); i++) {
- if (!Character.isJavaIdentifierPart(text.charAt(i))) {
- return false;
- }
- }
-
- return true;
- }
-
- protected String convertStringLiteral(String text) {
- // skip leading and trailing quotes
- String literal = text.substring(1, text.length() - 1);
-
- // convert ''s to 's
- while (true) {
- int index = literal.indexOf("''");
- if (index == -1) {
- break;
- }
- literal = literal.substring(0, index) +
- literal.substring(index + 1, literal.length());
- }
-
- return literal;
- }
-
- /** */
- public Object getRootNode() {
- return queryRoot;
- }
-}
-
-document
- : root = selectStatement {queryRoot = $root.node;}
- | root = updateStatement {queryRoot = $root.node;}
- | root = deleteStatement {queryRoot = $root.node;}
- ;
-
-selectStatement returns [Object node]
- at init {
- node = null;
-}
- : select = selectClause
- from = fromClause
- (where = whereClause)?
- (groupBy = groupByClause)?
- (having = havingClause)?
- (orderBy = orderByClause)?
- EOF
- {
- $node = factory.newSelectStatement(0, 0, $select.node, $from.node, $where.node,
- $groupBy.node, $having.node, $orderBy.node);
- }
- ;
-
-//================================================
-
-updateStatement returns [Object node]
- at init {
- node = null;
-}
- : update = updateClause
- set = setClause
- (where = whereClause)?
- EOF { $node = factory.newUpdateStatement(0, 0, $update.node, $set.node, $where.node); }
- ;
-
-updateClause returns [Object node]
- at init {
- node = null;
-}
- : u = UPDATE schema = abstractSchemaName
- ((AS)? ident = IDENT )?
- {
- String schemaName = null;
- if ($ident != null){
- schemaName = $ident.getText();
- }
- $node = factory.newUpdateClause($u.getLine(), $u.getCharPositionInLine(),
- $schema.schema, schemaName);
- }
- ;
-
-setClause returns [Object node]
-scope{
- List assignments;
-}
- at init {
- node = null;
- $setClause::assignments = new ArrayList();
-}
- : t = SET n = setAssignmentClause { $setClause::assignments.add($n.node); }
- (COMMA n = setAssignmentClause { $setClause::assignments.add($n.node); } )*
- { $node = factory.newSetClause($t.getLine(), $t.getCharPositionInLine(), $setClause::assignments); }
- ;
-
-setAssignmentClause returns [Object node]
- at init {
- node = null;
-}
- @after{
- $node = factory.newSetAssignmentClause($t.getLine(), $t.getCharPositionInLine(),
- $target.node, $value.node);
- }
- : target = setAssignmentTarget t=EQUALS value = newValue
- ;
-
-setAssignmentTarget returns [Object node]
- at init {
- node = null;
-}
- : n = attribute { $node = $n.node;}
- | n = pathExpression {$node = $n.node;}
- ;
-
-newValue returns [Object node]
- at init { node = null; }
- : n = scalarExpression {$node = $n.node;}
- | n1 = NULL
- { $node = factory.newNullLiteral($n1.getLine(), $n1.getCharPositionInLine()); }
- ;
-
-//================================================
-
-deleteStatement returns [Object node]
- at init {
- node = null;
-}
- : delete = deleteClause
- (where = whereClause)?
- EOF { $node = factory.newDeleteStatement(0, 0, $delete.node, $where.node); }
- ;
-
-deleteClause returns [Object node]
-scope{
- String variable;
-}
- at init {
- node = null;
- $deleteClause::variable = null;
-}
- : t=DELETE FROM schema = abstractSchemaName
- ((AS)? ident=IDENT { $deleteClause::variable = $ident.getText(); })?
- {
- $node = factory.newDeleteClause($t.getLine(), $t.getCharPositionInLine(),
- $schema.schema, $deleteClause::variable);
- }
- ;
-
-//================================================
-
-selectClause returns [Object node]
-scope{
- boolean distinct;
- List exprs;
- List idents;
-}
- at init {
- node = null;
- $selectClause::distinct = false;
- $selectClause::exprs = new ArrayList();
- $selectClause::idents = new ArrayList();
-}
- : t=SELECT (DISTINCT { $selectClause::distinct = true; })? { setAggregatesAllowed(true); }
- n = selectItem
- {
- $selectClause::exprs.add($n.expr);
- $selectClause::idents.add($n.ident);
- }
- ( COMMA n = selectItem
- {
- $selectClause::exprs.add($n.expr);
- $selectClause::idents.add($n.ident);
- }
-
- )*
- {
- setAggregatesAllowed(false);
- $node = factory.newSelectClause($t.getLine(), $t.getCharPositionInLine(),
- $selectClause::distinct, $selectClause::exprs, $selectClause::idents);
- }
- ;
-
-selectItem returns [Object expr, Object ident]
- : e = selectExpression ((AS)? identifier = IDENT)?
- {
- $expr = $e.node;
- if ($identifier == null){
- $ident = null;
- } else {
- $ident = $identifier.getText();
- }
-
- }
- ;
-
-
-selectExpression returns [Object node]
- at init { node = null; }
- : n = aggregateExpression {$node = $n.node;}
- | n = scalarExpression {$node = $n.node;}
- | OBJECT LEFT_ROUND_BRACKET n = variableAccessOrTypeConstant RIGHT_ROUND_BRACKET {$node = $n.node;}
- | n = constructorExpression {$node = $n.node;}
- | n = mapEntryExpression {$node = $n.node;}
- ;
-
-mapEntryExpression returns [Object node]
- at init { node = null; }
- : l = ENTRY LEFT_ROUND_BRACKET n = variableAccessOrTypeConstant RIGHT_ROUND_BRACKET { $node = factory.newMapEntry($l.getLine(), $l.getCharPositionInLine(), $n.node);}
- ;
-
-pathExprOrVariableAccess returns [Object node]
- at init {
- node = null;
-}
- : n = qualifiedIdentificationVariable {$node = $n.node;}
- (d=DOT right = attribute
- { $node = factory.newDot($d.getLine(), $d.getCharPositionInLine(), $node, $right.node); }
- )*
- ;
-
-qualifiedIdentificationVariable returns [Object node]
- at init { node = null; }
- : n = variableAccessOrTypeConstant {$node = $n.node;}
- | l = KEY LEFT_ROUND_BRACKET n = variableAccessOrTypeConstant RIGHT_ROUND_BRACKET { $node = factory.newKey($l.getLine(), $l.getCharPositionInLine(), $n.node); }
- | l = VALUE LEFT_ROUND_BRACKET n = variableAccessOrTypeConstant RIGHT_ROUND_BRACKET { $node = $n.node;}
- ;
-
-aggregateExpression returns [Object node]
-scope{
- boolean distinct;
-}
- at init {
- node = null;
- $aggregateExpression::distinct = false;
-}
- : t1=AVG LEFT_ROUND_BRACKET (DISTINCT { $aggregateExpression::distinct = true; })?
- n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newAvg($t1.getLine(), $t1.getCharPositionInLine(), $aggregateExpression::distinct, $n.node); }
- | t2=MAX LEFT_ROUND_BRACKET (DISTINCT { $aggregateExpression::distinct = true; })?
- n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newMax($t2.getLine(), $t2.getCharPositionInLine(), $aggregateExpression::distinct, $n.node); }
- | t3=MIN LEFT_ROUND_BRACKET (DISTINCT { $aggregateExpression::distinct = true; })?
- n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newMin($t3.getLine(), $t3.getCharPositionInLine(), $aggregateExpression::distinct, $n.node); }
- | t4=SUM LEFT_ROUND_BRACKET (DISTINCT { $aggregateExpression::distinct = true; })?
- n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newSum($t4.getLine(), $t4.getCharPositionInLine(), $aggregateExpression::distinct, $n.node); }
- | t5=COUNT LEFT_ROUND_BRACKET (DISTINCT { $aggregateExpression::distinct = true; })?
- n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newCount($t5.getLine(), $t5.getCharPositionInLine(), $aggregateExpression::distinct, $n.node); }
- ;
-
-constructorExpression returns [Object node]
-scope{
- List args;
-}
- at init {
- node = null;
- $constructorExpression::args = new ArrayList();
-}
- : t = NEW className = constructorName
- LEFT_ROUND_BRACKET
- n = constructorItem {$constructorExpression::args.add($n.node); }
- ( COMMA n = constructorItem { $constructorExpression::args.add($n.node); } )*
- RIGHT_ROUND_BRACKET
- {
- $node = factory.newConstructor($t.getLine(), $t.getCharPositionInLine(),
- $className.className, $constructorExpression::args);
- }
- ;
-
-constructorName returns [String className]
-scope{
- StringBuffer buf;
-}
- at init {
- className = null;
- $constructorName::buf = new StringBuffer();
-}
- : i1=IDENT { $constructorName::buf.append($i1.getText()); }
- ( DOT i2=IDENT { $constructorName::buf.append('.').append($i2.getText()); })*
- { $className = $constructorName::buf.toString(); }
- ;
-
-constructorItem returns [Object node]
- at init { node = null; }
- : n = scalarExpression {$node = $n.node;}
- | n = aggregateExpression {$node = $n.node;}
-
- ;
-
-fromClause returns [Object node]
-scope{
- List varDecls;
-}
- at init {
- node = null;
- $fromClause::varDecls = new ArrayList();
-}
- : t=FROM identificationVariableDeclaration[$fromClause::varDecls]
- (COMMA ( identificationVariableDeclaration[$fromClause::varDecls]
- | n = collectionMemberDeclaration {$fromClause::varDecls.add($n.node); }
- )
- )*
- { $node = factory.newFromClause($t.getLine(), $t.getCharPositionInLine(), $fromClause::varDecls); }
- ;
-
-identificationVariableDeclaration [List varDecls]
- : node = rangeVariableDeclaration { varDecls.add($node.node); }
- ( node = join { $varDecls.add($node.node); } )*
- ;
-
-rangeVariableDeclaration returns [Object node]
- at init {
- node = null;
-}
- : schema = abstractSchemaName (AS)? i=IDENT
- {
- $node = factory.newRangeVariableDecl($i.getLine(), $i.getCharPositionInLine(),
- $schema.schema, $i.getText());
- }
- ;
-
-// Non-terminal abstractSchemaName first matches any token to allow abstract
-// schema names that are keywords (such as order, etc.).
-// Method validateAbstractSchemaName throws an exception if the text of the
-// token is not a valid Java identifier.
-abstractSchemaName returns [String schema]
- at init { schema = null; }
- : ident=.
- {
- $schema = $ident.getText();
- validateAbstractSchemaName($ident);
- }
- ;
-
-join returns [Object node]
- at init {
- node = null;
-}
- : outerJoin = joinSpec
- ( n = joinAssociationPathExpression (AS)? i=IDENT
- {
- $node = factory.newJoinVariableDecl($i.getLine(), $i.getCharPositionInLine(),
- $outerJoin.outer, $n.node, $i.getText(), null);
- }
- |
- TREAT LEFT_ROUND_BRACKET n = joinAssociationPathExpression AS castClass = IDENT RIGHT_ROUND_BRACKET (AS)? i=IDENT
- {
- $node = factory.newJoinVariableDecl($i.getLine(), $i.getCharPositionInLine(),
- $outerJoin.outer, $n.node, $i.getText(), $castClass.getText());
- }
- | t=FETCH n = joinAssociationPathExpression
- {
- $node = factory.newFetchJoin($t.getLine(), $t.getCharPositionInLine(),
- $outerJoin.outer, $n.node); }
- )
- ;
-
-joinSpec returns [boolean outer]
- at init { outer = false; }
- : (LEFT (OUTER)? { $outer = true; } | INNER )? JOIN
- ;
-
-collectionMemberDeclaration returns [Object node]
- at init { node = null; }
- : t=IN LEFT_ROUND_BRACKET n = collectionValuedPathExpression RIGHT_ROUND_BRACKET
- (AS)? i=IDENT
- {
- $node = factory.newCollectionMemberVariableDecl(
- $t.getLine(), $t.getCharPositionInLine(), $n.node, $i.getText());
- }
- ;
-
-collectionValuedPathExpression returns [Object node]
- at init { node = null; }
- : n = pathExpression {$node = $n.node;}
- ;
-
-associationPathExpression returns [Object node]
- at init { node = null; }
- : n = pathExpression {$node = $n.node;}
- ;
-
-joinAssociationPathExpression returns [Object node]
- at init {
- node = null;
-}
- : n = qualifiedIdentificationVariable {$node = $n.node;}
- (d=DOT right = attribute
- { $node = factory.newDot($d.getLine(), $d.getCharPositionInLine(), $node, $right.node); }
- )+
- ;
-
-singleValuedPathExpression returns [Object node]
- at init { node = null; }
- : n = pathExpression {$node = $n.node;}
- ;
-
-stateFieldPathExpression returns [Object node]
- at init { node = null; }
- : n = pathExpression {$node = $n.node;}
- ;
-
-pathExpression returns [Object node]
- at init {
- node = null;
-}
- : n = qualifiedIdentificationVariable {$node = $n.node;}
- (d=DOT right = attribute
- {
- $node = factory.newDot($d.getLine(), $d.getCharPositionInLine(), $node, $right.node);
- }
- )+
- ;
-
-// Non-terminal attribute first matches any token to allow abstract
-// schema names that are keywords (such as order, etc.).
-// Method validateAttributeName throws an exception if the text of the
-// token is not a valid Java identifier.
-attribute returns [Object node]
- at init { node = null; }
-
- : i=.
- {
- validateAttributeName($i);
- $node = factory.newAttribute($i.getLine(), $i.getCharPositionInLine(), $i.getText());
- }
- ;
-
-variableAccessOrTypeConstant returns [Object node]
- at init { node = null; }
- : i=IDENT
- { $node = factory.newVariableAccessOrTypeConstant($i.getLine(), $i.getCharPositionInLine(), $i.getText()); }
- ;
-
-whereClause returns [Object node]
- at init { node = null; }
- : t=WHERE n = conditionalExpression
- {
- $node = factory.newWhereClause($t.getLine(), $t.getCharPositionInLine(), $n.node);
- }
- ;
-
-conditionalExpression returns [Object node]
- at init {
- node = null;
-}
- : n = conditionalTerm {$node = $n.node;}
- (t=OR right = conditionalTerm
- { $node = factory.newOr($t.getLine(), $t.getCharPositionInLine(), $node, $right.node); }
- )*
- ;
-
-conditionalTerm returns [Object node]
- at init {
- node = null;
-}
- : n = conditionalFactor {$node = $n.node;}
- (t=AND right = conditionalFactor
- { $node = factory.newAnd($t.getLine(), $t.getCharPositionInLine(), $node, $right.node); }
- )*
- ;
-
-conditionalFactor returns [Object node]
- at init { node = null; }
- : (n=NOT)?
- ( n1 = conditionalPrimary
- {
- $node = $n1.node;
- if ($n != null) {
- $node = factory.newNot($n.getLine(), $n.getCharPositionInLine(), $n1.node);
- }
- }
- | n1 = existsExpression[(n!=null)] {$node = $n1.node;}
- )
- ;
-
-conditionalPrimary returns [Object node]
- at init { node = null; }
- : (LEFT_ROUND_BRACKET conditionalExpression) =>
- LEFT_ROUND_BRACKET n = conditionalExpression RIGHT_ROUND_BRACKET {$node = $n.node;}
- | n = simpleConditionalExpression {$node = $n.node;}
- ;
-
-simpleConditionalExpression returns [Object node]
- at init {
- node = null;
-}
- : left = arithmeticExpression n = simpleConditionalExpressionRemainder[$left.node] {$node = $n.node;}
- | left = nonArithmeticScalarExpression n = simpleConditionalExpressionRemainder[$left.node] {$node = $n.node;}
- ;
-
-simpleConditionalExpressionRemainder [Object left] returns [Object node]
- at init { node = null; }
- : n = comparisonExpression[left] {$node = $n.node;}
- | (n1=NOT)? n = conditionWithNotExpression[(n1!=null), left] {$node = $n.node;}
- | IS (n2=NOT)? n = isExpression[(n2!=null), left] {$node = $n.node;}
- ;
-
-conditionWithNotExpression [boolean not, Object left] returns [Object node]
- at init { node = null; }
- : n = betweenExpression[not, left] {$node = $n.node;}
- | n = likeExpression[not, left] {$node = $n.node;}
- | n= inExpression[not, left] {$node = $n.node;}
- | n= collectionMemberExpression[not, left] {$node = $n.node;}
- ;
-
-isExpression [boolean not, Object left] returns [Object node]
- at init { node = null; }
- : n = nullComparisonExpression[not, left] {$node = $n.node;}
- | n = emptyCollectionComparisonExpression[not, left] {$node = $n.node;}
- ;
-
-betweenExpression [boolean not, Object left] returns [Object node]
- at init {
- node = null;
-}
- : t=BETWEEN
- lowerBound = scalarOrSubSelectExpression AND upperBound = scalarOrSubSelectExpression
- {
- $node = factory.newBetween($t.getLine(), $t.getCharPositionInLine(),
- $not, $left, $lowerBound.node, $upperBound.node);
- }
- ;
-
-inExpression [boolean not, Object left] returns [Object node]
-scope{
- List items;
-}
- at init {
- node = null;
- $inExpression::items = new ArrayList();
-}
- : t = IN n = inputParameter
- {
- $node = factory.newIn($t.getLine(), $t.getCharPositionInLine(),
- $not, $left, $n.node);
- }
- | t=IN
- LEFT_ROUND_BRACKET
- ( itemNode = scalarOrSubSelectExpression { $inExpression::items.add($itemNode.node); }
- ( COMMA itemNode = scalarOrSubSelectExpression { $inExpression::items.add($itemNode.node); } )*
- {
- $node = factory.newIn($t.getLine(), $t.getCharPositionInLine(),
- $not, $left, $inExpression::items);
- }
- | subqueryNode = subquery
- {
- $node = factory.newIn($t.getLine(), $t.getCharPositionInLine(),
- $not, $left, $subqueryNode.node);
- }
- )
- RIGHT_ROUND_BRACKET
- ;
-
-likeExpression [boolean not, Object left] returns [Object node]
- at init {
- node = null;
-}
- : t=LIKE pattern = scalarOrSubSelectExpression
- (escapeChars = escape)?
- {
- $node = factory.newLike($t.getLine(), $t.getCharPositionInLine(), $not,
- $left, $pattern.node, $escapeChars.node);
- }
- ;
-
-escape returns [Object node]
- at init {
- node = null;
-}
- : t=ESCAPE escapeClause = scalarExpression
- { $node = factory.newEscape($t.getLine(), $t.getCharPositionInLine(), $escapeClause.node); }
- ;
-
-nullComparisonExpression [boolean not, Object left] returns [Object node]
- at init { node = null; }
- : t= NULL
- { $node = factory.newIsNull($t.getLine(), $t.getCharPositionInLine(), $not, $left); }
- ;
-
-emptyCollectionComparisonExpression [boolean not, Object left] returns [Object node]
- at init { node = null; }
- : t= EMPTY
- { $node = factory.newIsEmpty($t.getLine(), $t.getCharPositionInLine(), $not, $left); }
- ;
-
-collectionMemberExpression [boolean not, Object left] returns [Object node]
- at init { node = null; }
- : t= MEMBER (OF)? n = collectionValuedPathExpression
- {
- $node = factory.newMemberOf($t.getLine(), $t.getCharPositionInLine(),
- $not, $left, $n.node);
- }
- ;
-
-existsExpression [boolean not] returns [Object node]
- at init {
- node = null;
-}
- : t=EXISTS LEFT_ROUND_BRACKET subqueryNode = subquery RIGHT_ROUND_BRACKET
- {
- $node = factory.newExists($t.getLine(), $t.getCharPositionInLine(),
- $not, $subqueryNode.node);
- }
- ;
-
-comparisonExpression [Object left] returns [Object node]
- at init { node = null; }
- : t1=EQUALS n = comparisonExpressionRightOperand
- { $node = factory.newEquals($t1.getLine(), $t1.getCharPositionInLine(), $left, $n.node); }
- | t2=NOT_EQUAL_TO n = comparisonExpressionRightOperand
- { $node = factory.newNotEquals($t2.getLine(), $t2.getCharPositionInLine(), $left, $n.node); }
- | t3=GREATER_THAN n = comparisonExpressionRightOperand
- { $node = factory.newGreaterThan($t3.getLine(), $t3.getCharPositionInLine(), $left, $n.node); }
- | t4=GREATER_THAN_EQUAL_TO n = comparisonExpressionRightOperand
- { $node = factory.newGreaterThanEqual($t4.getLine(), $t4.getCharPositionInLine(), $left, $n.node); }
- | t5=LESS_THAN n = comparisonExpressionRightOperand
- { $node = factory.newLessThan($t5.getLine(), $t5.getCharPositionInLine(), $left, $n.node); }
- | t6=LESS_THAN_EQUAL_TO n = comparisonExpressionRightOperand
- { $node = factory.newLessThanEqual($t6.getLine(), $t6.getCharPositionInLine(), $left, $n.node); }
- ;
-
-comparisonExpressionRightOperand returns [Object node]
- at init { node = null; }
- : n = arithmeticExpression {$node = $n.node;}
- | n = nonArithmeticScalarExpression {$node = $n.node;}
- | n = anyOrAllExpression {$node = $n.node;}
- ;
-
-arithmeticExpression returns [Object node]
- at init { node = null; }
- : n = simpleArithmeticExpression {$node = $n.node;}
- | LEFT_ROUND_BRACKET n = subquery RIGHT_ROUND_BRACKET {$node = $n.node;}
- ;
-
-simpleArithmeticExpression returns [Object node]
- at init {
- node = null;
-}
- : n = arithmeticTerm {$node = $n.node;}
- ( p=PLUS right = arithmeticTerm
- { $node = factory.newPlus($p.getLine(), $p.getCharPositionInLine(), $node, $right.node); }
- | m=MINUS right = arithmeticTerm
- { $node = factory.newMinus($m.getLine(), $m.getCharPositionInLine(), $node, $right.node); }
- )*
- ;
-
-arithmeticTerm returns [Object node]
- at init {
- node = null;
-}
- : n = arithmeticFactor {$node = $n.node;}
- ( m=MULTIPLY right = arithmeticFactor
- { $node = factory.newMultiply($m.getLine(), $m.getCharPositionInLine(), $node, $right.node); }
- | d=DIVIDE right = arithmeticFactor
- { $node = factory.newDivide($d.getLine(), $d.getCharPositionInLine(), $node, $right.node); }
- )*
- ;
-
-arithmeticFactor returns [Object node]
- at init { node = null; }
- : p=PLUS n = arithmeticPrimary
- {$node = factory.newUnaryPlus($p.getLine(), $p.getCharPositionInLine(), $n.node); }
- | m=MINUS n = arithmeticPrimary
- { $node = factory.newUnaryMinus($m.getLine(), $m.getCharPositionInLine(), $n.node); }
- | n = arithmeticPrimary {$node = $n.node;}
- ;
-
-arithmeticPrimary returns [Object node]
- at init { node = null; }
- : { aggregatesAllowed() }? n = aggregateExpression {$node = $n.node;}
- | n = pathExprOrVariableAccess {$node = $n.node;}
- | n = inputParameter {$node = $n.node;}
- | n = caseExpression {$node = $n.node;}
- | n = functionsReturningNumerics {$node = $n.node;}
- | LEFT_ROUND_BRACKET n = simpleArithmeticExpression RIGHT_ROUND_BRACKET {$node = $n.node;}
- | n = literalNumeric {$node = $n.node;}
- ;
-
-scalarExpression returns [Object node]
- at init {node = null; }
- : n = simpleArithmeticExpression {$node = $n.node;}
- | n = nonArithmeticScalarExpression {$node = $n.node;}
- ;
-
-scalarOrSubSelectExpression returns [Object node]
- at init {node = null; }
- : n = arithmeticExpression {$node = $n.node;}
- | n = nonArithmeticScalarExpression {$node = $n.node;}
- ;
-
-nonArithmeticScalarExpression returns [Object node]
- at init {node = null; }
- : n = functionsReturningDatetime {$node = $n.node;}
- | n = functionsReturningStrings {$node = $n.node;}
- | n = literalString {$node = $n.node;}
- | n = literalBoolean {$node = $n.node;}
- | n = literalTemporal {$node = $n.node;}
- | n = entityTypeExpression {$node = $n.node;}
- ;
-
-anyOrAllExpression returns [Object node]
- at init { node = null; }
- : a=ALL LEFT_ROUND_BRACKET n = subquery RIGHT_ROUND_BRACKET
- { $node = factory.newAll($a.getLine(), $a.getCharPositionInLine(), $n.node); }
- | y=ANY LEFT_ROUND_BRACKET n = subquery RIGHT_ROUND_BRACKET
- { $node = factory.newAny($y.getLine(), $y.getCharPositionInLine(), $n.node); }
- | s=SOME LEFT_ROUND_BRACKET n = subquery RIGHT_ROUND_BRACKET
- { $node = factory.newSome($s.getLine(), $s.getCharPositionInLine(), $n.node); }
- ;
-
-entityTypeExpression returns [Object node]
- at init {node = null;}
- : n = typeDiscriminator {$node = $n.node;}
- ;
-
-typeDiscriminator returns [Object node]
- at init {node = null;}
- : a = TYPE LEFT_ROUND_BRACKET n = variableOrSingleValuedPath RIGHT_ROUND_BRACKET { $node = factory.newType($a.getLine(), $a.getCharPositionInLine(), $n.node);}
- | c = TYPE LEFT_ROUND_BRACKET n = inputParameter RIGHT_ROUND_BRACKET { $node = factory.newType($c.getLine(), $c.getCharPositionInLine(), $n.node);}
- ;
-
-caseExpression returns [Object node]
- at init {node = null;}
- : n = simpleCaseExpression {$node = $n.node;}
- | n = generalCaseExpression {$node = $n.node;}
- | n = coalesceExpression {$node = $n.node;}
- | n = nullIfExpression {$node = $n.node;}
- ;
-
-simpleCaseExpression returns [Object node]
-scope{
- List whens;
-}
- at init {
- node = null;
- $simpleCaseExpression::whens = new ArrayList();
-}
- : a = CASE c = caseOperand w = simpleWhenClause {$simpleCaseExpression::whens.add($w.node);} (w = simpleWhenClause {$simpleCaseExpression::whens.add($w.node);})* ELSE e = scalarExpression END
- {
- $node = factory.newCaseClause($a.getLine(), $a.getCharPositionInLine(), $c.node,
- $simpleCaseExpression::whens, $e.node);
- }
- ;
-
-generalCaseExpression returns [Object node]
-scope{
- List whens;
-}
- at init {
- node = null;
- $generalCaseExpression::whens = new ArrayList();
-}
- : a = CASE w = whenClause {$generalCaseExpression::whens.add($w.node);} (w = whenClause {$generalCaseExpression::whens.add($w.node);})* ELSE e = scalarExpression END
- {
- $node = factory.newCaseClause($a.getLine(), $a.getCharPositionInLine(), null,
- $generalCaseExpression::whens, $e.node);
- }
- ;
-
-coalesceExpression returns [Object node]
-scope{
- List primaries;
-}
- at init {
- node = null;
- $coalesceExpression::primaries = new ArrayList();
-}
- : c = COALESCE LEFT_ROUND_BRACKET p = scalarExpression {$coalesceExpression::primaries.add($p.node);} (COMMA s = scalarExpression {$coalesceExpression::primaries.add($s.node);})+ RIGHT_ROUND_BRACKET
- {
- $node = factory.newCoalesceClause($c.getLine(), $c.getCharPositionInLine(),
- $coalesceExpression::primaries);
- }
- ;
-
-nullIfExpression returns [Object node]
- at init {node = null;}
- : n = NULLIF LEFT_ROUND_BRACKET l = scalarExpression COMMA r = scalarExpression RIGHT_ROUND_BRACKET
- {
- $node = factory.newNullIfClause($n.getLine(), $n.getCharPositionInLine(),
- $l.node, $r.node);
- }
- ;
-
-
-caseOperand returns [Object node]
- at init {node = null;}
- : n = stateFieldPathExpression {$node = $n.node;}
- | n = typeDiscriminator {$node = $n.node;}
- ;
-
-whenClause returns [Object node]
- at init {node = null;}
- : w = WHEN c = conditionalExpression THEN a = scalarExpression
- {
- $node = factory.newWhenClause($w.getLine(), $w.getCharPositionInLine(),
- $c.node, $a.node);
- }
- ;
-
-simpleWhenClause returns [Object node]
- at init {node = null;}
- : w = WHEN c = scalarExpression THEN a = scalarExpression
- {
- $node = factory.newWhenClause($w.getLine(), $w.getCharPositionInLine(),
- $c.node, $a.node);
- }
- ;
-
-variableOrSingleValuedPath returns [Object node]
- at init {node = null;}
- : n = singleValuedPathExpression {$node = $n.node;}
- | n = variableAccessOrTypeConstant {$node = $n.node;}
- ;
-
-stringPrimary returns [Object node]
- at init { node = null; }
- : n = literalString {$node = $n.node;}
- | n = functionsReturningStrings {$node = $n.node;}
- | n = inputParameter {$node = $n.node;}
- | n = stateFieldPathExpression {$node = $n.node;}
- ;
-
-// Literals and Low level stuff
-
-literal returns [Object node]
- at init { node = null; }
- : n = literalNumeric {$node = $n.node;}
- | n = literalBoolean {$node = $n.node;}
- | n = literalString {$node = $n.node;}
- ;
-
-literalNumeric returns [Object node]
- at init { node = null; }
- : i=INTEGER_LITERAL
- {
- $node = factory.newIntegerLiteral($i.getLine(), $i.getCharPositionInLine(),
- Integer.valueOf($i.getText()));
- }
- | l=LONG_LITERAL
- {
- String text = l.getText();
- // skip the tailing 'l'
- text = text.substring(0, text.length() - 1);
- $node = factory.newLongLiteral($l.getLine(), $l.getCharPositionInLine(),
- Long.valueOf(text));
- }
- | f=FLOAT_LITERAL
- {
- $node = factory.newFloatLiteral($f.getLine(), $f.getCharPositionInLine(),
- Float.valueOf($f.getText()));
- }
- | d=DOUBLE_LITERAL
- {
- $node = factory.newDoubleLiteral($d.getLine(), $d.getCharPositionInLine(),
- Double.valueOf($d.getText()));
- }
- ;
-
-literalBoolean returns [Object node]
- at init { node = null; }
- : t=TRUE
- { $node = factory.newBooleanLiteral($t.getLine(), $t.getCharPositionInLine(), Boolean.TRUE); }
- | f=FALSE
- { $node = factory.newBooleanLiteral($f.getLine(), $f.getCharPositionInLine(), Boolean.FALSE); }
- ;
-
-literalString returns [Object node]
- at init { node = null; }
- : d=STRING_LITERAL_DOUBLE_QUOTED
- {
- $node = factory.newStringLiteral($d.getLine(), $d.getCharPositionInLine(),
- convertStringLiteral($d.getText()));
- }
- | s=STRING_LITERAL_SINGLE_QUOTED
- {
- $node = factory.newStringLiteral($s.getLine(), $s.getCharPositionInLine(),
- convertStringLiteral($s.getText()));
- }
- ;
-
-literalTemporal returns [Object node]
- at init { node = null; }
- : d = DATE_LITERAL {$node = factory.newDateLiteral($d.getLine(), $d.getCharPositionInLine(), $d.getText()); }
- | d = TIME_LITERAL {$node = factory.newTimeLiteral($d.getLine(), $d.getCharPositionInLine(), $d.getText()); }
- | d = TIMESTAMP_LITERAL {$node = factory.newTimeStampLiteral($d.getLine(), $d.getCharPositionInLine(), $d.getText()); }
- ;
-
-inputParameter returns [Object node]
- at init { node = null; }
- : p=POSITIONAL_PARAM
- {
- // skip the leading ?
- String text = $p.getText().substring(1);
- $node = factory.newPositionalParameter($p.getLine(), $p.getCharPositionInLine(), text);
- }
- | n=NAMED_PARAM
- {
- // skip the leading :
- String text = $n.getText().substring(1);
- $node = factory.newNamedParameter($n.getLine(), $n.getCharPositionInLine(), text);
- }
- ;
-
-functionsReturningNumerics returns [Object node]
- at init { node = null; }
- : n = abs {$node = $n.node;}
- | n = length {$node = $n.node;}
- | n = mod {$node = $n.node;}
- | n = sqrt {$node = $n.node;}
- | n = locate {$node = $n.node;}
- | n = size {$node = $n.node;}
- | n = index {$node = $n.node;}
- | n = func {$node = $n.node;}
- ;
-
-functionsReturningDatetime returns [Object node]
- at init { node = null; }
- : d=CURRENT_DATE
- { $node = factory.newCurrentDate($d.getLine(), $d.getCharPositionInLine()); }
- | t=CURRENT_TIME
- { $node = factory.newCurrentTime($t.getLine(), $t.getCharPositionInLine()); }
- | ts=CURRENT_TIMESTAMP
- { $node = factory.newCurrentTimestamp($ts.getLine(), $ts.getCharPositionInLine()); }
- ;
-
-functionsReturningStrings returns [Object node]
- at init { node = null; }
- : n = concat {$node = $n.node;}
- | n = substring {$node = $n.node;}
- | n = trim {$node = $n.node;}
- | n = upper {$node = $n.node;}
- | n = lower {$node = $n.node;}
- ;
-
-// Functions returning strings
-concat returns [Object node]
-scope {
- List items;
-}
- at init {
- node = null;
- $concat::items = new ArrayList();
-}
- : c=CONCAT
- LEFT_ROUND_BRACKET
- firstArg = scalarExpression {$concat::items.add($firstArg.node);} (COMMA arg = scalarExpression {$concat::items.add($arg.node);})+
- RIGHT_ROUND_BRACKET
- { $node = factory.newConcat($c.getLine(), $c.getCharPositionInLine(), $concat::items); }
- ;
-
-substring returns [Object node]
- at init {
- node = null;
- lengthNode = null;
-}
- : s=SUBSTRING
- LEFT_ROUND_BRACKET
- string = scalarExpression COMMA
- start = scalarExpression
- (COMMA lengthNode = scalarExpression)?
- RIGHT_ROUND_BRACKET
- {
- if (lengthNode != null){
- $node = factory.newSubstring($s.getLine(), $s.getCharPositionInLine(),
- $string.node, $start.node, $lengthNode.node);
- } else {
- $node = factory.newSubstring($s.getLine(), $s.getCharPositionInLine(),
- $string.node, $start.node, null);
- }
- }
- ;
-
-trim returns [Object node]
- at init {
- node = null;
- trimSpecIndicator = TrimSpecification.BOTH;
-}
- : t=TRIM
- LEFT_ROUND_BRACKET
- (trimSpecIndicator = trimSpec trimCharNode = trimChar FROM)?
- n = stringPrimary
- RIGHT_ROUND_BRACKET
- {
- $node = factory.newTrim($t.getLine(), $t.getCharPositionInLine(),
- $trimSpecIndicator.trimSpec, $trimCharNode.node, $n.node);
- }
- ;
-
-trimSpec returns [TrimSpecification trimSpec]
- at init { trimSpec = TrimSpecification.BOTH; }
- : LEADING
- { $trimSpec = TrimSpecification.LEADING; }
- | TRAILING
- { $trimSpec = TrimSpecification.TRAILING; }
- | BOTH
- { $trimSpec = TrimSpecification.BOTH; }
- | // empty rule
- ;
-
-
-trimChar returns [Object node]
- at init { node = null; }
- : n = literalString {$node = $n.node;}
- | n = inputParameter {$node = $n.node;}
- | // empty rule
- ;
-
-upper returns [Object node]
- at init { node = null; }
- : u=UPPER LEFT_ROUND_BRACKET n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newUpper($u.getLine(), $u.getCharPositionInLine(), $n.node); }
- ;
-
-lower returns [Object node]
- at init { node = null; }
- : l=LOWER LEFT_ROUND_BRACKET n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newLower($l.getLine(), $l.getCharPositionInLine(), $n.node); }
- ;
-
-// Functions returning numerics
-abs returns [Object node]
- at init { node = null; }
- : a=ABS LEFT_ROUND_BRACKET n = simpleArithmeticExpression RIGHT_ROUND_BRACKET
- { $node = factory.newAbs($a.getLine(), $a.getCharPositionInLine(), $n.node); }
- ;
-
-length returns [Object node]
- at init { node = null; }
- : l=LENGTH LEFT_ROUND_BRACKET n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newLength($l.getLine(), $l.getCharPositionInLine(), $n.node); }
- ;
-
-locate returns [Object node]
- at init {
- node = null;
-}
- : l=LOCATE
- LEFT_ROUND_BRACKET
- pattern = scalarExpression COMMA n = scalarExpression
- ( COMMA startPos = scalarExpression )?
- RIGHT_ROUND_BRACKET
- {
- $node = factory.newLocate($l.getLine(), $l.getCharPositionInLine(),
- $pattern.node, $n.node, $startPos.node);
- }
- ;
-
-size returns [Object node]
- at init { node = null; }
- : s=SIZE
- LEFT_ROUND_BRACKET n = collectionValuedPathExpression RIGHT_ROUND_BRACKET
- { $node = factory.newSize($s.getLine(), $s.getCharPositionInLine(), $n.node);}
- ;
-
-mod returns [Object node]
- at init {
- node = null;
-}
- : m=MOD LEFT_ROUND_BRACKET
- left = scalarExpression COMMA
- right = scalarExpression
- RIGHT_ROUND_BRACKET
- { $node = factory.newMod($m.getLine(), $m.getCharPositionInLine(), $left.node, $right.node); }
- ;
-
-sqrt returns [Object node]
- at init { node = null; }
- : s=SQRT
- LEFT_ROUND_BRACKET n = scalarExpression RIGHT_ROUND_BRACKET
- { $node = factory.newSqrt($s.getLine(), $s.getCharPositionInLine(), $n.node); }
- ;
-
-index returns [Object node]
- at init { node = null; }
- : s=INDEX LEFT_ROUND_BRACKET n = variableAccessOrTypeConstant RIGHT_ROUND_BRACKET
- { $node = factory.newIndex($s.getLine(), $s.getCharPositionInLine(), $n.node); }
- ;
-
-// custom function
-func returns [Object node]
-scope{
- List exprs;
-}
- at init {
- node = null;
- $func::exprs = new ArrayList();
-}
- : f=FUNC LEFT_ROUND_BRACKET
- name = STRING_LITERAL_SINGLE_QUOTED
- (COMMA n = newValue
- {
- $func::exprs.add($n.node);
- }
- )*
- RIGHT_ROUND_BRACKET
- {$node = factory.newFunc($f.getLine(), $f.getCharPositionInLine(), $name.getText(), $func::exprs);}
- ;
-
-subquery returns [Object node]
- at init {
- node = null;
-}
- : select = simpleSelectClause
- from = subqueryFromClause
- (where = whereClause)?
- (groupBy = groupByClause)?
- (having = havingClause)?
- {
- $node = factory.newSubquery(0, 0, $select.node, $from.node,
- $where.node, $groupBy.node, $having.node);
- }
- ;
-
-simpleSelectClause returns [Object node]
-scope{
- boolean distinct;
-}
- at init {
- node = null;
- $simpleSelectClause::distinct = false;
-}
- : s=SELECT (DISTINCT { $simpleSelectClause::distinct = true; })?
- n = simpleSelectExpression
- {
- List exprs = new ArrayList();
- exprs.add($n.node);
- $node = factory.newSelectClause($s.getLine(), $s.getCharPositionInLine(),
- $simpleSelectClause::distinct, exprs);
- }
- ;
-
-simpleSelectExpression returns [Object node]
- at init { node = null; }
- : n = singleValuedPathExpression {$node = $n.node;}
- | n = aggregateExpression {$node = $n.node;}
- | n = variableAccessOrTypeConstant {$node = $n.node;}
- ;
-
-
-subqueryFromClause returns [Object node]
-scope{
- List varDecls;
-}
- at init {
- node = null;
- $subqueryFromClause::varDecls = new ArrayList();
-}
- : f=FROM subselectIdentificationVariableDeclaration[$subqueryFromClause::varDecls]
- (
- COMMA
- subselectIdentificationVariableDeclaration[$subqueryFromClause::varDecls]
- | c = collectionMemberDeclaration {$subqueryFromClause::varDecls.add($c.node);}
- )*
- { $node = factory.newFromClause($f.getLine(), $f.getCharPositionInLine(), $subqueryFromClause::varDecls); }
- ;
-
-subselectIdentificationVariableDeclaration [List varDecls]
- at init { Object node; }
- : identificationVariableDeclaration[varDecls]
- | n = associationPathExpression (AS)? i=IDENT (join { varDecls.add($n.node); } )*
- {
- $varDecls.add(factory.newVariableDecl($i.getLine(), $i.getCharPositionInLine(),
- $n.node, $i.getText()));
- }
- | n = collectionMemberDeclaration { $varDecls.add($n.node); }
- ;
-
-orderByClause returns [Object node]
-scope{
- List items;
-}
- at init {
- node = null;
- $orderByClause::items = new ArrayList();
-}
- : o=ORDER BY { setAggregatesAllowed(true); }
- n = orderByItem { $orderByClause::items.add($n.node); }
- (COMMA n = orderByItem { $orderByClause::items.add($n.node); })*
- {
- setAggregatesAllowed(false);
- $node = factory.newOrderByClause($o.getLine(), $o.getCharPositionInLine(), $orderByClause::items);
- }
- ;
-
-orderByItem returns [Object node]
- at init { node = null; }
- : n = scalarExpression
- ( a=ASC
- { $node = factory.newAscOrdering($a.getLine(), $a.getCharPositionInLine(), $n.node); }
- | d=DESC
- { $node = factory.newDescOrdering($d.getLine(), $d.getCharPositionInLine(), $n.node); }
- | // empty rule
- { $node = factory.newAscOrdering(0, 0, $n.node); }
- )
- ;
-
-groupByClause returns [Object node]
-scope{
- List items;
-}
- at init {
- node = null;
- $groupByClause::items = new ArrayList();
-}
- : g=GROUP BY
- n = scalarExpression { $groupByClause::items.add($n.node); }
- (COMMA n = scalarExpression { $groupByClause::items.add($n.node); } )*
- { $node = factory.newGroupByClause($g.getLine(), $g.getCharPositionInLine(), $groupByClause::items); }
- ;
-
-
-havingClause returns [Object node]
- at init { node = null; }
- : h=HAVING { setAggregatesAllowed(true); }
- n = conditionalExpression
- {
- setAggregatesAllowed(false);
- $node = factory.newHavingClause($h.getLine(), $h.getCharPositionInLine(), $n.node);
- }
- ;
-
-
-DOT
- : '.'
- ;
-
-WS : (' ' | '\t' | '\n' | '\r')+
- { skip(); } ;
-
-LEFT_ROUND_BRACKET
- : '('
- ;
-
-LEFT_CURLY_BRACKET
- : '{'
- ;
-
-RIGHT_ROUND_BRACKET
- : ')'
- ;
-
-RIGHT_CURLY_BRACKET
- : '}'
- ;
-
-COMMA
- : ','
- ;
-
-IDENT
- : TEXTCHAR
- ;
-
-fragment
-TEXTCHAR
- : ('a'..'z' | 'A'..'Z' | '_' | '$' | '`' | '~' | '@' | '#' | '%' | '^' | '&' | '|' | '[' | ']' | ';'
- c1='\u0080'..'\uFFFE'
- {
- if (!Character.isJavaIdentifierStart(c1)) {
- throw new InvalidIdentifierStartException(c1, getLine(), getCharPositionInLine());
- }
- }
- )
- ('a'..'z' | '_' | '$' | '0'..'9' |
- c2='\u0080'..'\uFFFE'
- {
- if (!Character.isJavaIdentifierPart(c2)) {
- throw new InvalidIdentifierStartException(c2, getLine(), getCharPositionInLine());
- }
- }
- )*
- ;
-
-
-HEX_LITERAL : '0' ('x'|'X') HEX_DIGIT+ ;
-
-INTEGER_LITERAL : MINUS? ('0' | '1'..'9' '0'..'9'*) ;
-
-LONG_LITERAL : INTEGER_LITERAL INTEGER_SUFFIX;
-
-OCTAL_LITERAL : MINUS? '0' ('0'..'7')+ ;
-
-// hexadecimal digit
-fragment
-HEX_DIGIT
- : ('0'..'9'|'a'..'f' | 'A'..'F')
- ;
-
-fragment
-INTEGER_SUFFIX : ('l'|'L') ;
-
-fragment
-NUMERIC_DIGITS
- : MINUS? ('0'..'9')+ '.' ('0'..'9')*
- | MINUS? '.' ('0'..'9')+
- | MINUS? ('0'..'9')+
- ;
-
-DOUBLE_LITERAL
- : NUMERIC_DIGITS DOUBLE_SUFFIX?
- ;
-
-FLOAT_LITERAL
- : NUMERIC_DIGITS EXPONENT FLOAT_SUFFIX?
- | NUMERIC_DIGITS FLOAT_SUFFIX
- ;
-
-// a couple protected methods to assist in matching floating point numbers
-fragment
-EXPONENT
- : ('e' | 'E') ('+'|'-')? ('0'..'9')+
- ;
-
-
-fragment
-FLOAT_SUFFIX
- : 'f'
- ;
-
-DATE_LITERAL
- : LEFT_CURLY_BRACKET ('d') (' ' | '\t')+ '\'' DATE_STRING '\'' (' ' | '\t')* RIGHT_CURLY_BRACKET
- ;
-
-TIME_LITERAL
- : LEFT_CURLY_BRACKET ('t') (' ' | '\t')+ '\'' TIME_STRING '\'' (' ' | '\t')* RIGHT_CURLY_BRACKET
- ;
-
-TIMESTAMP_LITERAL
- : LEFT_CURLY_BRACKET ('ts') (' ' | '\t')+ '\'' DATE_STRING ' ' TIME_STRING '\'' (' ' | '\t')* RIGHT_CURLY_BRACKET
- ;
-
-DATE_STRING
- : '0'..'9' '0'..'9' '0'..'9' '0'..'9' '-' '0'..'9' '0'..'9' '-' '0'..'9' '0'..'9'
- ;
-
-TIME_STRING
- : '0'..'9' ('0'..'9')? ':' '0'..'9' '0'..'9' ':' '0'..'9' '0'..'9' '.' '0'..'9'*
- ;
-
-fragment
-DOUBLE_SUFFIX
- : 'd'
- ;
-
-EQUALS
- : '='
- ;
-
-GREATER_THAN
- : '>'
- ;
-
-GREATER_THAN_EQUAL_TO
- : '>='
- ;
-
-LESS_THAN
- : '<'
- ;
-
-LESS_THAN_EQUAL_TO
- : '<='
- ;
-
-NOT_EQUAL_TO
- : '<>'
- | '!='
- ;
-
-MULTIPLY
- : '*'
- ;
-
-DIVIDE
- : '/'
- ;
-
-PLUS
- : '+'
- ;
-
-MINUS
- : '-'
- ;
-
-
-POSITIONAL_PARAM
- : '?' ('1'..'9') ('0'..'9')*
- ;
-
-NAMED_PARAM
- : ':' TEXTCHAR
- ;
-
-// Added Jan 9, 2001 JED
-// string literals
-STRING_LITERAL_DOUBLE_QUOTED
- : '"' (~ ('"'))* '"'
- ;
-
-STRING_LITERAL_SINGLE_QUOTED
- : '\'' (~ ('\'') | ('\'\''))* '\''
- ;
-
-
-
diff --git a/debian/build.properties b/debian/build.properties
index f7defcc..54cee72 100644
--- a/debian/build.properties
+++ b/debian/build.properties
@@ -2,6 +2,6 @@ debug=on
target=1.6
source=1.5
-dir.src=${basedir}/..
-dir.debian=${basedir}
-dir.build=${basedir}/../target
+dir.src=.
+dir.debian=debian
+dir.build=target/
diff --git a/debian/build.xml b/debian/build.xml
index a5b2a59..120f947 100644
--- a/debian/build.xml
+++ b/debian/build.xml
@@ -1,69 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project name="build-eclipselink" default="package">
- <property file="build.properties"/>
+<project basedir="../" name="build-eclipselink" default="package">
+ <property file="debian/build.properties"/>
+
+ <path id="classpath">
+ <fileset dir="/" includesfile="${dir.debian}/classpath-debian"/>
+ </path>
- <path id="classpath">
- <fileset dir="/" includesfile="classpath-debian"/>
- </path>
+ <target name="init">
+ <mkdir dir="${dir.build}/classes"/>
+ <mkdir dir="${dir.build}/modelgen"/>
+ </target>
- <target name="init">
- <mkdir dir="${dir.build}/classes"/>
- </target>
+ <target name="clean">
+ <delete dir="${dir.build}"/>
+ </target>
- <target name="clean">
- <delete dir="${dir.build}"/>
- </target>
+ <target name="compile" depends="init">
+ <javac
+ srcdir="${dir.src}"
+ destdir="${dir.build}/classes"
+ classpathref="classpath"
+ debug="${debug}"
+ source="${source}"
+ target="${target}"
+ excludesfile="${dir.debian}/excludesfiles/build"
+ includeantruntime="false">
+ <include name="org/eclipse/persistence/**"/>
+ <include name="commonj/**"/>
+ </javac>
+ <copy todir="${dir.build}/classes">
+ <fileset dir=".">
+ <include name="*.html"/>
+ <include name="org/**"/>
+ <include name="OSGI-INF/**"/>
+ <exclude name="**/*.java"/>
+ </fileset>
+ </copy>
+ </target>
- <target name="compile" depends="init">
- <javac
- srcdir="${dir.src}"
- destdir="${dir.build}/classes"
- classpathref="classpath"
- debug="${debug}"
- source="${source}"
- target="${target}"
- excludesfile="${dir.debian}/excludesfiles/build"
- includeantruntime="false">
- <include name="org/eclipse/persistence/**"/>
- <include name="commonj/**"/>
- </javac>
- </target>
-
- <target name="jar" depends="compile">
- <jar
- destfile="${dir.build}/eclipselink.jar"
- basedir="${dir.build}/classes"
- excludes="org/eclipse/persistence/internal/libraries/**">
- <zipfileset dir="${dir.src}/xsd" prefix="xsd"/>
- <zipfileset file="${dir.src}/eclipselink_oxm_2_0.xsd" prefix="xsd"/>
- <zipfileset file="${dir.src}/eclipselink_oxm_2_1.xsd" prefix="xsd"/>
- <fileset dir="${dir.src}">
- <include name="org/eclipse/persistence/internal/helper/VendorNameToPlatformMapping.properties"/>
- <include name="org/eclipse/persistence/jpa/*.xsd"/>
- </fileset>
- <service type="javax.persistence.spi.PersistenceProvider"
- provider="org.eclipse.persistence.jpa.PersistenceProvider"/>
- </jar>
- </target>
-
- <target name="javadoc" depends="init">
- <mkdir dir="${dir.build}/api"/>
- <javadoc
- destdir="${dir.build}/api"
- classpathref="classpath"
- access="public"
- defaultexcludes="yes"
- source="1.5">
- <packageset
- dir="${dir.src}"
- excludesfile="${dir.debian}/excludesfiles/javadoc">
- <include name="org/eclipse/persistence/**"/>
- </packageset>
- <link href="/usr/share/doc/default-jdk-doc/api/"
- packagelistLoc="/usr/share/doc/default-jdk-doc/api/package-list"/>
- </javadoc>
- </target>
-
- <target name="package" depends="jar,javadoc"/>
+ <target name="jar" depends="compile">
+ <jar
+ destfile="${dir.build}/eclipselink.jar"
+ basedir="${dir.build}/classes"
+ excludes="org/eclipse/persistence/internal/libraries/**">
+ <service type="javax.persistence.spi.PersistenceProvider"
+ provider="org.eclipse.persistence.jpa.PersistenceProvider"/>
+ </jar>
+ <jar
+ destfile="${dir.build}/org.eclipse.persistence.jpa.modelgen.processor.jar"
+ basedir="${dir.build}/modelgen">
+ <fileset dir=".">
+ <include name="*.html"/>
+ </fileset>
+ <service type="javax.annotation.processing.Processor"
+ provider="org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor"/>
+ </jar>
+ </target>
+ <target name="javadoc" depends="init">
+ <mkdir dir="${dir.build}/api"/>
+ <javadoc
+ destdir="${dir.build}/api"
+ classpathref="classpath"
+ access="public"
+ defaultexcludes="yes"
+ source="1.5">
+ <packageset
+ dir="${dir.src}"
+ excludesfile="${dir.debian}/excludesfiles/javadoc">
+ <include name="org/eclipse/persistence/**"/>
+ </packageset>
+ <link href="/usr/share/doc/default-jdk-doc/api/"
+ packagelistLoc="/usr/share/doc/default-jdk-doc/api/package-list"/>
+ </javadoc>
+ </target>
+
+ <target name="package" depends="jar,javadoc"/>
+
</project>
diff --git a/debian/classpath-debian b/debian/classpath-debian
index 460c340..8025470 100644
--- a/debian/classpath-debian
+++ b/debian/classpath-debian
@@ -1,11 +1,15 @@
-usr/share/java/glassfish-javaee.jar
-usr/share/java/geronimo-jpa-2.0-spec.jar
+usr/share/java/javax.persistence-api.jar
+usr/share/java/geronimo-jta_1.1_spec.jar
usr/share/java/geronimo-validation.jar
+usr/share/java/geronimo-javamail-1.4-spec.jar
+usr/share/java/geronimo-jms-1.1-spec.jar
+usr/share/java/geronimo-j2ee-connector-1.5-spec.jar
usr/share/java/aspectjtools.jar
usr/share/java/ant.jar
usr/share/java/sdo-api.jar
+usr/share/java/cdi-api.jar
+usr/share/java/jsr311-api.jar
+usr/share/java/servlet-api-3.0.jar
usr/share/java/antlr3.jar
usr/share/java/antlr3-runtime.jar
-usr/share/java/asm.jar
-usr/share/java/asm-attrs.jar
-usr/share/java/asm2-commons.jar
+usr/share/java/asm3-all.jar
diff --git a/debian/control b/debian/control
index e315038..36f8b65 100644
--- a/debian/control
+++ b/debian/control
@@ -1,13 +1,21 @@
Source: eclipselink
Maintainer: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
-Uploaders: Miguel Landaeta <miguel at miguel.cc>
+Uploaders: Miguel Landaeta <miguel at miguel.cc>,
+ Andrew Ross <ubuntu at rossfamily.co.uk>
Section: java
Priority: optional
Build-Depends: debhelper (>= 7.0.50), default-jdk, javahelper, ant,
- glassfish-javaee, libgeronimo-jpa-2.0-spec-java, aspectj, libsdo-api-java,
- libgeronimo-validation-1.0-spec-java, libasm-java, libasm2-java,
- antlr3 (>= 3.2), default-jdk-doc
-Standards-Version: 3.9.3
+ libjavax.persistence-java (>= 2.1.0),
+ libgeronimo-jta-1.1-spec-java,
+ libgeronimo-validation-1.0-spec-java,
+ libgeronimo-javamail-1.4-spec-java,
+ libgeronimo-jms-1.1-spec-java,
+ libgeronimo-j2ee-connector-1.5-spec-java,
+ libservlet3.0-java
+ aspectj, libsdo-api-java,
+ libcdi-api-java, libjsr311-api-java
+ libasm3-java, antlr3 (>= 3.2), default-jdk-doc
+Standards-Version: 3.9.4
DM-Upload-Allowed: yes
Homepage: http://www.eclipse.org/eclipselink/
Vcs-Git: git://git.debian.org/git/pkg-java/eclipselink.git
@@ -15,10 +23,16 @@ Vcs-Browser: http://git.debian.org/?p=pkg-java/eclipselink.git
Package: libeclipselink-java
Architecture: all
-Depends: glassfish-javaee, libgeronimo-jpa-2.0-spec-java,
- libgeronimo-validation-1.0-spec-java, libasm-java, libasm2-java,
- antlr3 (>= 3.2), ${misc:Depends}
-Recommends: aspectj, libsdo-api-java
+Depends:
+ libjavax.persistence-java (>= 2.1.0),
+ libgeronimo-jta-1.1-spec-java,
+ libgeronimo-validation-1.0-spec-java,
+ libgeronimo-javamail-1.4-spec-java,
+ libgeronimo-jms-1.1-spec-java,
+ libgeronimo-j2ee-connector-1.5-spec-java,
+ libcdi-api-java, libjsr311-api-java
+ libasm3-java, antlr3 (>= 3.2), ${misc:Depends}
+Recommends: aspectj, libsdo-api-java, libservlet3.0-java
Suggests: libeclipselink-java-doc (= ${binary:Version})
Description: Eclipse Persistence Services Project
Eclipse Persistence Services Project, more commonly known as EclipseLink,
diff --git a/debian/excludesfiles/build b/debian/excludesfiles/build
index 9e485f1..34a3678 100644
--- a/debian/excludesfiles/build
+++ b/debian/excludesfiles/build
@@ -1,10 +1,15 @@
# Oracle
-org/eclipse/persistence/internal/eis/adapters/aq/**
-org/eclipse/persistence/eis/adapters/aq/**
org/eclipse/persistence/internal/platform/database/oracle/**
org/eclipse/persistence/platform/database/oracle/*.java
org/eclipse/persistence/platform/database/oracle/converters/**
org/eclipse/persistence/platform/xml/xdk/**
+org/eclipse/persistence/platform/database/oracle/dcn/**
+org/eclipse/persistence/platform/database/oracle/ucp/**
+org/eclipse/persistence/tools/profiler/oracle/**
# Embedded libraries
org/eclipse/persistence/internal/libraries/**
+
+# Jaxb-XJC
+org/eclipse/persistence/jaxb/dynamic/metadata/SchemaMetadata.java
+org/eclipse/persistence/jaxb/javamodel/xjc/**
diff --git a/debian/excludesfiles/javadoc b/debian/excludesfiles/javadoc
index 656845d..bc558ea 100644
--- a/debian/excludesfiles/javadoc
+++ b/debian/excludesfiles/javadoc
@@ -1,7 +1,18 @@
# Oracle
-org/eclipse/persistence/eis/adapters/aq/**
-org/eclipse/persistence/platform/database/oracle/**
+org/eclipse/persistence/internal/platform/database/oracle/**
+org/eclipse/persistence/platform/database/oracle/*.java
+org/eclipse/persistence/platform/database/oracle/converters/**
org/eclipse/persistence/platform/xml/xdk/**
+org/eclipse/persistence/platform/database/oracle/dcn/**
+org/eclipse/persistence/platform/database/oracle/ucp/**
+org/eclipse/persistence/tools/profiler/oracle/**
+
+# Embedded libraries
+org/eclipse/persistence/internal/libraries/**
+
+# Jaxb-XJC
+org/eclipse/persistence/jaxb/dynamic/metadata/SchemaMetadata.java
+org/eclipse/persistence/jaxb/javamodel/xjc/**
# internal code
org/eclipse/persistence/internal/**
diff --git a/debian/libeclipselink-java.classpath b/debian/libeclipselink-java.classpath
deleted file mode 100644
index 9c92c06..0000000
--- a/debian/libeclipselink-java.classpath
+++ /dev/null
@@ -1 +0,0 @@
-target/eclipselink.jar /usr/share/java/glassfish-javaee.jar /usr/share/java/geronimo-jpa-2.0-spec.jar /usr/share/java/geronimo-validation.jar /usr/share/java/aspectjtools.jar /usr/share/java/sdo-api.jar /usr/share/java/antlr3.jar /usr/share/java/asm.jar /usr/share/java/asm-attrs.jar /usr/share/java/asm2-commons.jar /usr/share/java/antlr3-runtime.jar
diff --git a/debian/libeclipselink-java.jlibs b/debian/libeclipselink-java.jlibs
index 52e1063..9bd2c5e 100644
--- a/debian/libeclipselink-java.jlibs
+++ b/debian/libeclipselink-java.jlibs
@@ -1 +1,2 @@
target/eclipselink.jar
+target/org.eclipse.persistence.jpa.modelgen.processor.jar
diff --git a/debian/libeclipselink-java.manifest b/debian/libeclipselink-java.manifest
index 1c6d910..e8012cb 100644
--- a/debian/libeclipselink-java.manifest
+++ b/debian/libeclipselink-java.manifest
@@ -1,9 +1,11 @@
usr/share/java/eclipselink.jar:
- Specification-Title: Eclipse Persistence Services Source
- Specification-Vendor: Eclipse.org - EclipseLink Project
- Specification-Version: 2.1.3
- Implementation-Title: org.eclipse.persistence
+ Release-Designation: EclipseLink 2.5.0
Implementation-Vendor: Eclipse.org - EclipseLink Project
- Implementation-Version: 2.1.3.v20110304-r9073
- Release-Designation: EclipseLink 2.1.3
- Class-Path: /usr/share/java/glassfish-javaee.jar /usr/share/java/geronimo-jpa-2.0-spec.jar /usr/share/java/geronimo-validation.jar /usr/share/java/aspectjtools.jar /usr/share/java/sdo-api.jar /usr/share/java/antlr3.jar /usr/share/java/asm.jar /usr/share/java/asm-attrs.jar /usr/share/java/asm2-commons.jar /usr/share/java/antlr3-runtime.jar
+ Implementation-Title: org.eclipse.persistence
+ Implementation-Version: 2.5.0.v20130507-3faac2b
+ Specification-Vendor: Eclipse.org - EclipseLink Project
+ Premain-Class: org.eclipse.persistence.internal.jpa.deployment.JavaSECMPInitializerAgent
+ Specification-Title: Eclipse Persistence Services
+ Specification-Version: 2.5.0
+ Main-Class: org.eclipse.persistence.Version
+ Class-Path: /usr/share/java/javax.persistence-api.jar /usr/share/java/geronimo-jta_1.1_spec.jar /usr/share/java/geronimo-validation.jar /usr/share/java/geronimo-javamail-1.4-spec.jar /usr/share/java/geronimo-jms-1.1-spec.jar /usr/share/java/geronimo-j2ee-connector-1.5-spec.jar /usr/share/java/aspectjtools.jar /usr/share/java/sdo-api.jar /usr/share/java/antlr3.jar /usr/share/java/antlr3-runtime.jar /usr/share/java/asm3-all.jar /usr/share/java/cdi-api.jar /usr/share/java/jsr311-api.jar /u [...]
diff --git a/debian/patches/antlr32.diff b/debian/patches/antlr32.diff
deleted file mode 100644
index f80f177..0000000
--- a/debian/patches/antlr32.diff
+++ /dev/null
@@ -1,79 +0,0 @@
-Description: Fix build with ANTLR >= 3.2
-Author: Damien Raude-Morvan
-Forwarded: no
-Last-Update: 2010-07-06
-
---- a/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java
-+++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java
-@@ -29,8 +29,8 @@
- int currentChar = Character.toLowerCase(input.LA(1));
- int stringChar = Character.toLowerCase(s.charAt(i));
- if ( currentChar != stringChar ) {
-- if ( backtracking>0 ) {
-- failed = true;
-+ if ( state.backtracking>0 ) {
-+ state.failed = true;
- return;
- }
- MismatchedTokenException mte =
-@@ -40,7 +40,7 @@
- }
- i++;
- input.consume();
-- failed = false;
-+ state.failed = false;
- }
- }
-
-@@ -48,8 +48,8 @@
- int currentChar = Character.toLowerCase(input.LA(1));
- int stringChar = Character.toLowerCase(c);
- if ( currentChar != stringChar ) {
-- if ( backtracking>0 ) {
-- failed = true;
-+ if ( state.backtracking>0 ) {
-+ state.failed = true;
- return;
- }
- MismatchedTokenException mte =
-@@ -58,7 +58,7 @@
- throw mte;
- }
- input.consume();
-- failed = false;
-+ state.failed = false;
- }
-
- public void matchRange(int a, int b)
-@@ -68,8 +68,8 @@
- int aChar = Character.toLowerCase(a);
- int bChar = Character.toLowerCase(b);
- if ( currentChar<aChar || currentChar>bChar ) {
-- if ( backtracking>0 ) {
-- failed = true;
-+ if ( state.backtracking>0 ) {
-+ state.failed = true;
- return;
- }
- MismatchedRangeException mre =
-@@ -78,6 +78,6 @@
- throw mre;
- }
- input.consume();
-- failed = false;
-+ state.failed = false;
- }
- }
---- a/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java
-+++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java
-@@ -64,6 +64,10 @@
- super(stream);
- }
-
-+ protected JPQLParser(TokenStream input, RecognizerSharedState state) {
-+ super(input, state);
-+ }
-+
- /**
- * INTERNAL
- * Returns the ANTLR version currently used.
diff --git a/debian/patches/cast.patch b/debian/patches/cast.patch
new file mode 100644
index 0000000..6baa1ce
--- /dev/null
+++ b/debian/patches/cast.patch
@@ -0,0 +1,68 @@
+--- a/org/eclipse/persistence/internal/xr/QueryOperation.java
++++ b/org/eclipse/persistence/internal/xr/QueryOperation.java
+@@ -593,8 +593,8 @@
+ Class oracleSQLXML;
+ Method getStringMethod;
+ if (PrivilegedAccessHelper.shouldUsePrivilegedAccess()) {
+- oracleSQLXML = AccessController.doPrivileged(new PrivilegedClassForName(ORACLESQLXML_STR, true, this.getClass().getClassLoader()));
+- getStringMethod = AccessController.doPrivileged(new PrivilegedGetDeclaredMethod(oracleSQLXML, GETSTRING_METHOD, new Class[] {}));
++ oracleSQLXML = (Class)AccessController.doPrivileged(new PrivilegedClassForName(ORACLESQLXML_STR, true, this.getClass().getClassLoader()));
++ getStringMethod = (Method)AccessController.doPrivileged(new PrivilegedGetDeclaredMethod(oracleSQLXML, GETSTRING_METHOD, new Class[] {}));
+ fieldValue = (String) AccessController.doPrivileged(new PrivilegedMethodInvoker(getStringMethod, fieldValue, new Object[] {}));
+ } else {
+ oracleSQLXML = PrivilegedAccessHelper.getClassForName(ORACLESQLXML_STR, true, this.getClass().getClassLoader());
+@@ -613,11 +613,11 @@
+ Object xmlTypeFactory;
+ Method getStringMethod;
+ if (PrivilegedAccessHelper.shouldUsePrivilegedAccess()) {
+- oracleOPAQUE = AccessController.doPrivileged(new PrivilegedClassForName(ORACLEOPAQUE_STR, true, this.getClass().getClassLoader()));
+- xmlTypeFactoryClass = AccessController.doPrivileged(new PrivilegedClassForName(XMLTYPEFACTORY_STR, true, this.getClass().getClassLoader()));
+- xmlTypeFactoryConstructor = AccessController.doPrivileged(new PrivilegedGetConstructorFor(xmlTypeFactoryClass, new Class[0], true));
++ oracleOPAQUE = (Class)AccessController.doPrivileged(new PrivilegedClassForName(ORACLEOPAQUE_STR, true, this.getClass().getClassLoader()));
++ xmlTypeFactoryClass = (Class)AccessController.doPrivileged(new PrivilegedClassForName(XMLTYPEFACTORY_STR, true, this.getClass().getClassLoader()));
++ xmlTypeFactoryConstructor = (Constructor)AccessController.doPrivileged(new PrivilegedGetConstructorFor(xmlTypeFactoryClass, new Class[0], true));
+ xmlTypeFactory = AccessController.doPrivileged(new PrivilegedInvokeConstructor(xmlTypeFactoryConstructor, new Object[0]));
+- getStringMethod = AccessController.doPrivileged(new PrivilegedGetDeclaredMethod(xmlTypeFactoryClass, GETSTRING_METHOD, new Class[] {oracleOPAQUE}));
++ getStringMethod = (Method)AccessController.doPrivileged(new PrivilegedGetDeclaredMethod(xmlTypeFactoryClass, GETSTRING_METHOD, new Class[] {oracleOPAQUE}));
+ fieldValue = (String) AccessController.doPrivileged(new PrivilegedMethodInvoker(getStringMethod, fieldValue, new Object[] {}));
+ } else {
+ oracleOPAQUE = PrivilegedAccessHelper.getClassForName(ORACLEOPAQUE_STR, false, this.getClass().getClassLoader());
+--- a/org/eclipse/persistence/jpa/rs/PersistenceContext.java
++++ b/org/eclipse/persistence/jpa/rs/PersistenceContext.java
+@@ -527,7 +527,7 @@
+ }
+ Field[] fields = null;
+ if (PrivilegedAccessHelper.shouldUsePrivilegedAccess()) {
+- fields = AccessController.doPrivileged(new PrivilegedGetDeclaredFields(clazz));
++ fields = (Field[])AccessController.doPrivileged(new PrivilegedGetDeclaredFields(clazz));
+ } else {
+ fields = PrivilegedAccessHelper.getDeclaredFields(clazz);
+ }
+--- a/org/eclipse/persistence/internal/jpa/metadata/converters/ConverterClass.java
++++ b/org/eclipse/persistence/internal/jpa/metadata/converters/ConverterClass.java
+@@ -110,12 +110,12 @@
+ if (PrivilegedAccessHelper.shouldUsePrivilegedAccess()){
+ try {
+ attributeConverterClass = (Class) AccessController.doPrivileged(new PrivilegedClassForName(attributeConverterClassName, true, loader));
+- attributeConverter = AccessController.doPrivileged(new PrivilegedNewInstanceFromClass(attributeConverterClass));
++ attributeConverter = (AttributeConverter)AccessController.doPrivileged(new PrivilegedNewInstanceFromClass(attributeConverterClass));
+ } catch (PrivilegedActionException exception) {
+ throw ValidationException.classNotFoundWhileConvertingClassNames(attributeConverterClassName, exception.getException());
+ }
+ } else {
+- attributeConverterClass = PrivilegedAccessHelper.getClassForName(attributeConverterClassName, true, loader);
++ attributeConverterClass = (Class)PrivilegedAccessHelper.getClassForName(attributeConverterClassName, true, loader);
+ attributeConverter = (AttributeConverter) PrivilegedAccessHelper.newInstanceFromClass(attributeConverterClass);
+ }
+ } catch (ClassNotFoundException exception) {
+--- a/org/eclipse/persistence/internal/jaxb/XMLJavaTypeConverter.java
++++ b/org/eclipse/persistence/internal/jaxb/XMLJavaTypeConverter.java
+@@ -271,7 +271,7 @@
+ } catch (IllegalAccessException e) {
+ Constructor ctor = null;
+ if (PrivilegedAccessHelper.shouldUsePrivilegedAccess()) {
+- ctor = AccessController.doPrivileged(new PrivilegedGetConstructorFor(xmlAdapterClass, new Class[0], true));
++ ctor = (Constructor)AccessController.doPrivileged(new PrivilegedGetConstructorFor(xmlAdapterClass, new Class[0], true));
+ } else {
+ ctor = PrivilegedAccessHelper.getDeclaredConstructorFor(xmlAdapterClass, new Class[0], true);
+ }
diff --git a/debian/patches/charset.patch b/debian/patches/charset.patch
new file mode 100644
index 0000000..9128576
--- /dev/null
+++ b/debian/patches/charset.patch
@@ -0,0 +1,11 @@
+--- a/org/eclipse/persistence/internal/jpa/transaction/JTATransactionWrapper.java
++++ b/org/eclipse/persistence/internal/jpa/transaction/JTATransactionWrapper.java
+@@ -114,7 +114,7 @@
+ // In general, a persistence context will be synchronized to the database as described below. However, a
+ // persistence context of type SynchronizationType.UNSYNCHRONIZED or an application-managed
+ // persistence context that has been created outside the scope of the current transaction will only be
+-// synchronized to the database if it has been joined to the current transaction by the application�s use of
++// synchronized to the database if it has been joined to the current transaction by the applications use of
+ // the EntityManager joinTransaction method.
+ // ..
+ // If there is no transaction active
diff --git a/debian/patches/disable_antlr3_embedded_copy.diff b/debian/patches/disable_antlr3_embedded_copy.diff
index 89398dd..3a11ef7 100644
--- a/debian/patches/disable_antlr3_embedded_copy.diff
+++ b/debian/patches/disable_antlr3_embedded_copy.diff
@@ -1,11 +1,27 @@
-Description: Remove references to ANTLR embedded copy
-Author: Miguel Landaeta <miguel at miguel.cc>
-Bug-Debian: http://bugs.debian.org/581861
-Forwarded: no
-Last-Update: 2010-07-07
-
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java
+--- a/about.html
++++ b/about.html
+@@ -127,7 +127,7 @@
+ <p>The <a href="http://www.antlr.org/">ANTLR library</a> (<a href="http://www.antlr.org/license.html">license</a>)
+ is included within EclipseLink Project to enable parsing of the Java Persistence
+ Query language (JP QL). The ANTLR library is re-packaged within the project
+- in the org.eclipse.persistence.internal.libraries.antlr.* packages. </p>
++ in the org.antlr.* packages. </p>
+ <p>The source is available with the project's subversion repository. The binaries
+ are distributed within the eclipselink.jar and in the org.eclipse.persistence.antlr_3.2.0.v*.jar
+ bundle.</p>
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java
+@@ -12,7 +12,7 @@
+ ******************************************************************************/
+ package org.eclipse.persistence.internal.jpa.parsing.jpql;
+
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.ANTLRStringStream;
++import org.antlr.runtime.ANTLRStringStream;
+
+ /**
+ * This Stream is used when tokenizing JPQL queries
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java
@@ -12,7 +12,7 @@
******************************************************************************/
package org.eclipse.persistence.internal.jpa.parsing.jpql;
@@ -15,8 +31,8 @@ Last-Update: 2010-07-07
import org.eclipse.persistence.internal.jpa.parsing.jpql.antlr.JPQLLexer;
/*
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java
@@ -12,8 +12,8 @@
******************************************************************************/
package org.eclipse.persistence.internal.jpa.parsing.jpql;
@@ -28,19 +44,8 @@ Last-Update: 2010-07-07
/**
* This is a custom Exception class that is thrown from ANTLR JPQL code when we
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java
-@@ -12,7 +12,7 @@
- ******************************************************************************/
- package org.eclipse.persistence.internal.jpa.parsing.jpql;
-
--import org.eclipse.persistence.internal.libraries.antlr.runtime.ANTLRStringStream;
-+import org.antlr.runtime.ANTLRStringStream;
-
- /**
- * This Stream is used when tokenizing JPQL queries
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java
@@ -12,7 +12,7 @@
******************************************************************************/
package org.eclipse.persistence.internal.jpa.parsing.jpql;
@@ -50,9 +55,9 @@ Last-Update: 2010-07-07
/*
* This is a custom Exception class that is thrown from ANTLR JPQL code when we
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java
-@@ -15,21 +15,21 @@ package org.eclipse.persistence.internal
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java
+@@ -15,21 +15,21 @@
import java.util.List;
import java.util.ArrayList;
@@ -88,7 +93,7 @@ Last-Update: 2010-07-07
//toplink imports
import org.eclipse.persistence.exceptions.JPQLException;
-@@ -41,7 +41,7 @@ import org.eclipse.persistence.internal.
+@@ -41,7 +41,7 @@
/**
* EJBQLParser is the superclass of the ANTLR generated parser.
*/
@@ -97,44 +102,30 @@ Last-Update: 2010-07-07
/** List of errors. */
private List errors = new ArrayList();
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java
@@ -5,7 +5,7 @@
import org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierStartException;
-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
-+import org.antlr.runtime.*;
++import org.antlr.runtime.*;
public class JPQLLexer extends Lexer {
public static final int EXPONENT=116;
-@@ -5144,4 +5145,4 @@ public class JPQLLexer extends Lexer {
- }
-
-
--}
-\ No newline at end of file
-+}
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java
@@ -9,7 +9,7 @@
import org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierException;
-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
+import org.antlr.runtime.*;
+
import java.util.Stack;
- import java.util.HashMap;
/*******************************************************************************
-@@ -22082,4 +22082,4 @@ public class JPQLParser extends org.ecli
- public static final BitSet FOLLOW_LEFT_ROUND_BRACKET_in_synpred13610 = new BitSet(new long[]{0x80ADD221601FC410L,0x000003FF9809338DL});
- public static final BitSet FOLLOW_conditionalExpression_in_synpred13612 = new BitSet(new long[]{0x0000000000000002L});
-
--}
-\ No newline at end of file
-+}
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java
+--- a/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java
++++ b/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java
@@ -12,8 +12,8 @@
******************************************************************************/
package org.eclipse.persistence.internal.jpa.parsing.jpql.antlr;
@@ -146,3 +137,52 @@ Last-Update: 2010-07-07
//eclipselink imports
import org.eclipse.persistence.internal.jpa.parsing.jpql.CaseInsensitiveJPQLLexer;
+--- a/org/eclipse/persistence/internal/oxm/record/json/JSONLexer.java
++++ b/org/eclipse/persistence/internal/oxm/record/json/JSONLexer.java
+@@ -12,7 +12,7 @@
+ ******************************************************************************/
+ package org.eclipse.persistence.internal.oxm.record.json;
+
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
++import org.antlr.runtime.*;
+
+ class JSONLexer extends Lexer {
+ public static final int EOF=-1;
+--- a/org/eclipse/persistence/internal/oxm/record/json/JSONParser.java
++++ b/org/eclipse/persistence/internal/oxm/record/json/JSONParser.java
+@@ -12,8 +12,8 @@
+ ******************************************************************************/
+ package org.eclipse.persistence.internal.oxm.record.json;
+
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.tree.*;
++import org.antlr.runtime.*;
++import org.antlr.runtime.tree.*;
+
+ class JSONParser extends Parser {
+ public static final String[] tokenNames = new String[] {
+--- a/org/eclipse/persistence/internal/oxm/record/json/JSONReader.java
++++ b/org/eclipse/persistence/internal/oxm/record/json/JSONReader.java
+@@ -27,14 +27,14 @@
+ import javax.xml.namespace.QName;
+
+ import org.eclipse.persistence.exceptions.XMLMarshalException;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.ANTLRInputStream;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.ANTLRReaderStream;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.CharStream;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.RecognitionException;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.TokenRewriteStream;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.TokenStream;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.tree.CommonTree;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.tree.Tree;
++import org.antlr.runtime.ANTLRInputStream;
++import org.antlr.runtime.ANTLRReaderStream;
++import org.antlr.runtime.CharStream;
++import org.antlr.runtime.RecognitionException;
++import org.antlr.runtime.TokenRewriteStream;
++import org.antlr.runtime.TokenStream;
++import org.antlr.runtime.tree.CommonTree;
++import org.antlr.runtime.tree.Tree;
+ import org.eclipse.persistence.internal.oxm.CollectionGroupingElementNodeValue;
+ import org.eclipse.persistence.internal.oxm.Constants;
+ import org.eclipse.persistence.internal.oxm.ContainerValue;
diff --git a/debian/patches/disable_asm_embedded_copy.diff b/debian/patches/disable_asm_embedded_copy.diff
index 579ae78..1d9043e 100644
--- a/debian/patches/disable_asm_embedded_copy.diff
+++ b/debian/patches/disable_asm_embedded_copy.diff
@@ -1,110 +1,176 @@
-Description: Remove reference to ASM 1.5 embedded copy
-Author: Miguel Landaeta <miguel at miguel.cc>
-Forwarded: no
-Last-Update: 2010-07-07
-
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataClass.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataClass.java
-@@ -30,7 +30,7 @@ import java.util.Map;
- import java.util.Set;
-
+--- a/org/eclipse/persistence/dynamic/DynamicClassWriter.java
++++ b/org/eclipse/persistence/dynamic/DynamicClassWriter.java
+@@ -25,41 +25,41 @@
+ import org.eclipse.persistence.internal.dynamic.DynamicEntityImpl;
+ import org.eclipse.persistence.internal.dynamic.DynamicPropertiesManager;
import org.eclipse.persistence.internal.helper.Helper;
--import org.eclipse.persistence.internal.libraries.asm.Constants;
-+import org.objectweb.asm.Constants;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Type;
+
+ import static org.eclipse.persistence.internal.dynamic.DynamicPropertiesManager.PROPERTIES_MANAGER_FIELD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.AASTORE;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_ENUM;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_FINAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PRIVATE;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PUBLIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_STATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SUPER;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SYNTHETIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ALOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ANEWARRAY;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ARETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.BIPUSH;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.SIPUSH;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.CHECKCAST;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.DUP;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.GETSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_0;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_1;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_2;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_3;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_4;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_5;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ILOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESPECIAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKEVIRTUAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.NEW;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.PUTSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.RETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.V1_5;
++import static org.objectweb.asm.Opcodes.AASTORE;
++import static org.objectweb.asm.Opcodes.ACC_ENUM;
++import static org.objectweb.asm.Opcodes.ACC_FINAL;
++import static org.objectweb.asm.Opcodes.ACC_PRIVATE;
++import static org.objectweb.asm.Opcodes.ACC_PUBLIC;
++import static org.objectweb.asm.Opcodes.ACC_STATIC;
++import static org.objectweb.asm.Opcodes.ACC_SUPER;
++import static org.objectweb.asm.Opcodes.ACC_SYNTHETIC;
++import static org.objectweb.asm.Opcodes.ALOAD;
++import static org.objectweb.asm.Opcodes.ANEWARRAY;
++import static org.objectweb.asm.Opcodes.ARETURN;
++import static org.objectweb.asm.Opcodes.BIPUSH;
++import static org.objectweb.asm.Opcodes.SIPUSH;
++import static org.objectweb.asm.Opcodes.CHECKCAST;
++import static org.objectweb.asm.Opcodes.DUP;
++import static org.objectweb.asm.Opcodes.GETSTATIC;
++import static org.objectweb.asm.Opcodes.ICONST_0;
++import static org.objectweb.asm.Opcodes.ICONST_1;
++import static org.objectweb.asm.Opcodes.ICONST_2;
++import static org.objectweb.asm.Opcodes.ICONST_3;
++import static org.objectweb.asm.Opcodes.ICONST_4;
++import static org.objectweb.asm.Opcodes.ICONST_5;
++import static org.objectweb.asm.Opcodes.ILOAD;
++import static org.objectweb.asm.Opcodes.INVOKESPECIAL;
++import static org.objectweb.asm.Opcodes.INVOKESTATIC;
++import static org.objectweb.asm.Opcodes.INVOKEVIRTUAL;
++import static org.objectweb.asm.Opcodes.NEW;
++import static org.objectweb.asm.Opcodes.PUTSTATIC;
++import static org.objectweb.asm.Opcodes.RETURN;
++import static org.objectweb.asm.Opcodes.V1_5;
/**
- * INTERNAL:
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataAsmFactory.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataAsmFactory.java
-@@ -23,15 +23,15 @@ import java.util.Map;
+ * Write the byte codes of a dynamic entity class. The class writer will create
+--- a/org/eclipse/persistence/internal/dbws/SOAPResponseClassLoader.java
++++ b/org/eclipse/persistence/internal/dbws/SOAPResponseClassLoader.java
+@@ -18,14 +18,14 @@
+ // Java extension imports
+
+ // EclipseLink imports
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PUBLIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SUPER;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ALOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESPECIAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.RETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.V1_5;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import static org.objectweb.asm.Opcodes.ACC_PUBLIC;
++import static org.objectweb.asm.Opcodes.ACC_SUPER;
++import static org.objectweb.asm.Opcodes.ALOAD;
++import static org.objectweb.asm.Opcodes.INVOKESPECIAL;
++import static org.objectweb.asm.Opcodes.RETURN;
++import static org.objectweb.asm.Opcodes.V1_5;
+
+ /**
+ * <p><b>INTERNAL</b>: A subclass of {@link ClassLoader} that exposes a build method to the hidden
+--- a/org/eclipse/persistence/internal/jpa/metadata/MetadataDynamicClassWriter.java
++++ b/org/eclipse/persistence/internal/jpa/metadata/MetadataDynamicClassWriter.java
+@@ -13,20 +13,20 @@
+ ******************************************************************************/
+ package org.eclipse.persistence.internal.jpa.metadata;
+
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PUBLIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ALOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ARETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.CHECKCAST;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESPECIAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.POP;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.RETURN;
++import static org.objectweb.asm.Opcodes.ACC_PUBLIC;
++import static org.objectweb.asm.Opcodes.ALOAD;
++import static org.objectweb.asm.Opcodes.ARETURN;
++import static org.objectweb.asm.Opcodes.CHECKCAST;
++import static org.objectweb.asm.Opcodes.INVOKESPECIAL;
++import static org.objectweb.asm.Opcodes.POP;
++import static org.objectweb.asm.Opcodes.RETURN;
+
+ import org.eclipse.persistence.dynamic.DynamicClassWriter;
+ import org.eclipse.persistence.internal.helper.ClassConstants;
+ import org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.MappingAccessor;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Type;
+
+ /**
+ * Custom {@link DynamicClassWriter} adding getter methods for virtual
+--- a/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataAsmFactory.java
++++ b/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataAsmFactory.java
+@@ -28,14 +28,14 @@
import org.eclipse.persistence.internal.helper.Helper;
import org.eclipse.persistence.internal.jpa.metadata.MetadataDescriptor;
import org.eclipse.persistence.internal.jpa.metadata.MetadataLogger;
+-import org.eclipse.persistence.internal.libraries.asm.AnnotationVisitor;
-import org.eclipse.persistence.internal.libraries.asm.Attribute;
-import org.eclipse.persistence.internal.libraries.asm.ClassReader;
-import org.eclipse.persistence.internal.libraries.asm.ClassVisitor;
--import org.eclipse.persistence.internal.libraries.asm.CodeVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.FieldVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
-import org.eclipse.persistence.internal.libraries.asm.Type;
--import org.eclipse.persistence.internal.libraries.asm.attrs.Annotation;
--import org.eclipse.persistence.internal.libraries.asm.attrs.RuntimeVisibleAnnotations;
--import org.eclipse.persistence.internal.libraries.asm.attrs.RuntimeVisibleParameterAnnotations;
--import org.eclipse.persistence.internal.libraries.asm.attrs.SignatureAttribute;
+-import org.eclipse.persistence.internal.libraries.asm.commons.EmptyVisitor;
++import org.objectweb.asm.AnnotationVisitor;
+import org.objectweb.asm.Attribute;
+import org.objectweb.asm.ClassReader;
+import org.objectweb.asm.ClassVisitor;
-+import org.objectweb.asm.CodeVisitor;
++import org.objectweb.asm.FieldVisitor;
++import org.objectweb.asm.MethodVisitor;
+import org.objectweb.asm.Type;
-+import org.objectweb.asm.attrs.Annotation;
-+import org.objectweb.asm.attrs.RuntimeVisibleAnnotations;
-+import org.objectweb.asm.attrs.RuntimeVisibleParameterAnnotations;
-+import org.objectweb.asm.attrs.SignatureAttribute;
++import org.objectweb.asm.commons.EmptyVisitor;
/**
- * INTERNAL:
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/weaving/ClassWeaver.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/weaving/ClassWeaver.java
-@@ -17,10 +17,10 @@ import java.util.*;
+ * INTERNAL: A metadata factory that uses ASM technology and no reflection
+--- a/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataClass.java
++++ b/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataClass.java
+@@ -32,7 +32,7 @@
+ import java.util.Set;
import org.eclipse.persistence.internal.helper.Helper;
- import org.eclipse.persistence.internal.jpa.EntityManagerImpl;
--import org.eclipse.persistence.internal.libraries.asm.*;
--import org.eclipse.persistence.internal.libraries.asm.commons.*;
--import org.eclipse.persistence.internal.libraries.asm.attrs.RuntimeVisibleAnnotations;
--import org.eclipse.persistence.internal.libraries.asm.attrs.Annotation;
-+import org.objectweb.asm.*;
-+import org.objectweb.asm.commons.*;
-+import org.objectweb.asm.attrs.RuntimeVisibleAnnotations;
-+import org.objectweb.asm.attrs.Annotation;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
++import org.objectweb.asm.Opcodes;
/**
* INTERNAL:
-@@ -82,7 +82,7 @@ public class ClassWeaver extends ClassAd
- /** Stores information on the class gathered from the temp class loader and descriptor. */
- protected ClassDetails classDetails;
- /** Used to generate the serialization serial UUID based on the original class. */
-- protected SerialVersionUIDAdder uuidGenerator;
-+ protected EclipseLinkSerialVersionUIDAdder uuidGenerator;
-
- // Keep track of what was weaved.
- protected boolean alreadyWeaved = false;
-@@ -182,7 +182,7 @@ public class ClassWeaver extends ClassAd
- public ClassWeaver(ClassWriter classWriter, ClassDetails classDetails) {
- super(classWriter);
- this.classDetails = classDetails;
-- this.uuidGenerator = new SerialVersionUIDAdder(classWriter);
-+ this.uuidGenerator = new EclipseLinkSerialVersionUIDAdder(classWriter);
- }
-
- /**
-@@ -1349,3 +1349,26 @@ public class ClassWeaver extends ClassAd
- super.visitEnd();
- }
- }
-+
-+/**
-+ * INTERNAL:
-+ * Just a hack to access some protected methods in org.objectweb.asm.SerialVersionUIDAdder class.
-+ * This is necessary because in the embedded copy of ASM library those method
-+ * were declared public but in the proper library those are declared as
-+ * protected.
-+ * @see org.objectweb.asm.SerialVersionUIDAdder
-+ */
-+class EclipseLinkSerialVersionUIDAdder extends SerialVersionUIDAdder {
-+
-+ public EclipseLinkSerialVersionUIDAdder(ClassVisitor cv) {
-+ super(cv);
-+ }
-+
-+ public boolean hasSVUID() {
-+ return hasSVUID();
-+ }
-+
-+ public long computeSVUID() {
-+ return computeSVUID();
-+ }
-+}
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/weaving/AttributeDetails.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/weaving/AttributeDetails.java
+--- a/org/eclipse/persistence/internal/jpa/weaving/AttributeDetails.java
++++ b/org/eclipse/persistence/internal/jpa/weaving/AttributeDetails.java
@@ -12,7 +12,7 @@
******************************************************************************/
package org.eclipse.persistence.internal.jpa.weaving;
@@ -114,252 +180,188 @@ Last-Update: 2010-07-07
import org.eclipse.persistence.mappings.DatabaseMapping;
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/weaving/MethodWeaver.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/weaving/MethodWeaver.java
-@@ -13,7 +13,7 @@
- package org.eclipse.persistence.internal.jpa.weaving;
+--- a/org/eclipse/persistence/internal/jpa/weaving/ClassWeaver.java
++++ b/org/eclipse/persistence/internal/jpa/weaving/ClassWeaver.java
+@@ -20,14 +20,14 @@
+ import java.util.Iterator;
+
+ import org.eclipse.persistence.internal.helper.Helper;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.FieldVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Label;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
+-import org.eclipse.persistence.internal.libraries.asm.commons.SerialVersionUIDAdder;
+-import org.eclipse.persistence.internal.libraries.asm.signature.SignatureReader;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.FieldVisitor;
++import org.objectweb.asm.Label;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
++import org.objectweb.asm.Type;
++import org.objectweb.asm.commons.SerialVersionUIDAdder;
++import org.objectweb.asm.signature.SignatureReader;
+
+ /**
+ * INTERNAL: Weaves classes to allow them to support EclipseLink indirection.
+--- a/org/eclipse/persistence/internal/jpa/weaving/ComputeClassWriter.java
++++ b/org/eclipse/persistence/internal/jpa/weaving/ComputeClassWriter.java
+@@ -33,9 +33,9 @@
+ import java.io.IOException;
+ import java.io.InputStream;
+
+-import org.eclipse.persistence.internal.libraries.asm.ClassReader;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
++import org.objectweb.asm.ClassReader;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.Opcodes;
+
+ /**
+ * A ClassWriter that computes the common super class of two classes without
+--- a/org/eclipse/persistence/internal/jpa/weaving/MethodWeaver.java
++++ b/org/eclipse/persistence/internal/jpa/weaving/MethodWeaver.java
+@@ -14,7 +14,7 @@
//ASM imports
+ import org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo;
-import org.eclipse.persistence.internal.libraries.asm.*;
+import org.objectweb.asm.*;
/**
* Processes all the methods of a class to weave in persistence code such as,
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/weaving/PersistenceWeaver.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/weaving/PersistenceWeaver.java
-@@ -23,8 +23,8 @@ import javax.persistence.spi.ClassTransf
+--- a/org/eclipse/persistence/internal/jpa/weaving/PersistenceWeaver.java
++++ b/org/eclipse/persistence/internal/jpa/weaving/PersistenceWeaver.java
+@@ -21,8 +21,8 @@
- // ASM imports
import org.eclipse.persistence.config.SystemProperties;
--import org.eclipse.persistence.internal.libraries.asm.*;
--import org.eclipse.persistence.internal.libraries.asm.attrs.Attributes;
-+import org.objectweb.asm.*;
-+import org.objectweb.asm.attrs.Attributes;
-
- // TopLink imports
+ import org.eclipse.persistence.internal.helper.Helper;
+-import org.eclipse.persistence.internal.libraries.asm.ClassReader;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
++import org.objectweb.asm.ClassReader;
++import org.objectweb.asm.ClassWriter;
import org.eclipse.persistence.internal.sessions.AbstractSession;
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/jpa/weaving/TransformerFactory.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/jpa/weaving/TransformerFactory.java
-@@ -14,7 +14,7 @@ package org.eclipse.persistence.internal
-
- import java.util.*;
-
+ import org.eclipse.persistence.logging.SessionLog;
+ import org.eclipse.persistence.sessions.Session;
+--- a/org/eclipse/persistence/internal/jpa/weaving/RestAdapterClassWriter.java
++++ b/org/eclipse/persistence/internal/jpa/weaving/RestAdapterClassWriter.java
+@@ -14,9 +14,9 @@
+
+ import org.eclipse.persistence.dynamic.DynamicClassLoader;
+ import org.eclipse.persistence.dynamic.EclipseLinkClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
+
+ public class RestAdapterClassWriter implements EclipseLinkClassWriter, Opcodes {
+
+--- a/org/eclipse/persistence/internal/jpa/weaving/TransformerFactory.java
++++ b/org/eclipse/persistence/internal/jpa/weaving/TransformerFactory.java
+@@ -31,7 +31,7 @@
+ import org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataClass;
+ import org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataField;
+ import org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataMethod;
-import org.eclipse.persistence.internal.libraries.asm.Type;
+import org.objectweb.asm.Type;
-
- import org.eclipse.persistence.indirection.ValueHolderInterface;
+ import org.eclipse.persistence.internal.sessions.AbstractSession;
+ import org.eclipse.persistence.internal.weaving.PersistenceWeavedChangeTracking;
import org.eclipse.persistence.logging.SessionLog;
---- eclipselink-2.1.0.orig/org/eclipse/persistence/internal/dbws/SOAPResponseClassLoader.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/internal/dbws/SOAPResponseClassLoader.java
-@@ -18,14 +18,14 @@ package org.eclipse.persistence.internal
- // Java extension imports
-
- // EclipseLink imports
--import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
--import org.eclipse.persistence.internal.libraries.asm.CodeVisitor;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_PUBLIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_SUPER;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ALOAD;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.INVOKESPECIAL;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.RETURN;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.V1_5;
-+import org.objectweb.asm.ClassWriter;
-+import org.objectweb.asm.CodeVisitor;
-+import static org.objectweb.asm.Constants.ACC_PUBLIC;
-+import static org.objectweb.asm.Constants.ACC_SUPER;
-+import static org.objectweb.asm.Constants.ALOAD;
-+import static org.objectweb.asm.Constants.INVOKESPECIAL;
-+import static org.objectweb.asm.Constants.RETURN;
-+import static org.objectweb.asm.Constants.V1_5;
-
- /**
- * <p><b>INTERNAL</b>: A subclass of {@link ClassLoader} that exposes a build method to the hidden
---- eclipselink-2.1.3.orig/org/eclipse/persistence/internal/xr/XRClassWriter.java
-+++ eclipselink-2.1.3/org/eclipse/persistence/internal/xr/XRClassWriter.java
-@@ -17,21 +17,21 @@ package org.eclipse.persistence.internal
+--- a/org/eclipse/persistence/internal/xr/XRClassWriter.java
++++ b/org/eclipse/persistence/internal/xr/XRClassWriter.java
+@@ -17,21 +17,21 @@
//EclipseLink imports
import org.eclipse.persistence.dynamic.DynamicClassLoader;
import org.eclipse.persistence.dynamic.DynamicClassWriter;
-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
--import org.eclipse.persistence.internal.libraries.asm.CodeVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+import org.objectweb.asm.ClassWriter;
-+import org.objectweb.asm.CodeVisitor;
- import org.eclipse.persistence.internal.xr.XRFieldInfo;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_PUBLIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_STATIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_SUPER;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ALOAD;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ARETURN;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.DUP;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.GETSTATIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.INVOKESPECIAL;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.NEW;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.PUTSTATIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.RETURN;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.V1_5;
-+import static org.objectweb.asm.Constants.ACC_PUBLIC;
-+import static org.objectweb.asm.Constants.ACC_STATIC;
-+import static org.objectweb.asm.Constants.ACC_SUPER;
-+import static org.objectweb.asm.Constants.ALOAD;
-+import static org.objectweb.asm.Constants.ARETURN;
-+import static org.objectweb.asm.Constants.DUP;
-+import static org.objectweb.asm.Constants.GETSTATIC;
-+import static org.objectweb.asm.Constants.INVOKESPECIAL;
-+import static org.objectweb.asm.Constants.NEW;
-+import static org.objectweb.asm.Constants.PUTSTATIC;
-+import static org.objectweb.asm.Constants.RETURN;
-+import static org.objectweb.asm.Constants.V1_5;
++import org.objectweb.asm.MethodVisitor;
+ import static org.eclipse.persistence.internal.dynamic.DynamicPropertiesManager.PROPERTIES_MANAGER_FIELD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PUBLIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_STATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SUPER;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ALOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ARETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.DUP;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.GETSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESPECIAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.NEW;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.PUTSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.RETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.V1_5;
++import static org.objectweb.asm.Opcodes.ACC_PUBLIC;
++import static org.objectweb.asm.Opcodes.ACC_STATIC;
++import static org.objectweb.asm.Opcodes.ACC_SUPER;
++import static org.objectweb.asm.Opcodes.ALOAD;
++import static org.objectweb.asm.Opcodes.ARETURN;
++import static org.objectweb.asm.Opcodes.DUP;
++import static org.objectweb.asm.Opcodes.GETSTATIC;
++import static org.objectweb.asm.Opcodes.INVOKESPECIAL;
++import static org.objectweb.asm.Opcodes.NEW;
++import static org.objectweb.asm.Opcodes.PUTSTATIC;
++import static org.objectweb.asm.Opcodes.RETURN;
++import static org.objectweb.asm.Opcodes.V1_5;
import static org.eclipse.persistence.internal.xr.XRDynamicClassLoader.COLLECTION_WRAPPER_SUFFIX;
- import static org.eclipse.persistence.internal.xr.XRDynamicEntity.XR_FIELD_INFO_STATIC;
-@@ -124,4 +124,4 @@ public class XRClassWriter extends Dynam
- cw.visitEnd();
- return cw.toByteArray();
- }
--}
-\ No newline at end of file
-+}
---- eclipselink-2.1.0.orig/org/eclipse/persistence/jaxb/compiler/AnnotationsProcessor.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/jaxb/compiler/AnnotationsProcessor.java
-@@ -71,15 +71,15 @@ import org.eclipse.persistence.internal.
- import org.eclipse.persistence.internal.helper.ClassConstants;
- import org.eclipse.persistence.internal.helper.ConversionManager;
- import org.eclipse.persistence.internal.jaxb.JaxbClassLoader;
+ /**
+--- a/org/eclipse/persistence/jaxb/compiler/AnnotationsProcessor.java
++++ b/org/eclipse/persistence/jaxb/compiler/AnnotationsProcessor.java
+@@ -82,13 +82,13 @@
+ import org.eclipse.persistence.internal.jaxb.many.ManyValue;
+ import org.eclipse.persistence.internal.jaxb.many.MultiDimensionalArrayValue;
+ import org.eclipse.persistence.internal.jaxb.many.MultiDimensionalCollectionValue;
+-import org.eclipse.persistence.internal.libraries.asm.AnnotationVisitor;
-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
--import org.eclipse.persistence.internal.libraries.asm.CodeVisitor;
--import org.eclipse.persistence.internal.libraries.asm.Constants;
+-import org.eclipse.persistence.internal.libraries.asm.FieldVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
-import org.eclipse.persistence.internal.libraries.asm.Label;
-import org.eclipse.persistence.internal.libraries.asm.Type;
--import org.eclipse.persistence.internal.libraries.asm.attrs.Annotation;
--import org.eclipse.persistence.internal.libraries.asm.attrs.LocalVariableTypeTableAttribute;
--import org.eclipse.persistence.internal.libraries.asm.attrs.RuntimeVisibleAnnotations;
--import org.eclipse.persistence.internal.libraries.asm.attrs.SignatureAttribute;
++import org.objectweb.asm.AnnotationVisitor;
+import org.objectweb.asm.ClassWriter;
-+import org.objectweb.asm.CodeVisitor;
-+import org.objectweb.asm.Constants;
++import org.objectweb.asm.FieldVisitor;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
+import org.objectweb.asm.Label;
+import org.objectweb.asm.Type;
-+import org.objectweb.asm.attrs.Annotation;
-+import org.objectweb.asm.attrs.LocalVariableTypeTableAttribute;
-+import org.objectweb.asm.attrs.RuntimeVisibleAnnotations;
-+import org.objectweb.asm.attrs.SignatureAttribute;
+ import org.eclipse.persistence.internal.oxm.Constants;
+ import org.eclipse.persistence.internal.oxm.Namespace;
import org.eclipse.persistence.internal.oxm.XMLConversionManager;
- import org.eclipse.persistence.internal.security.PrivilegedAccessHelper;
- import org.eclipse.persistence.jaxb.TypeMappingInfo;
---- eclipselink-2.1.0.orig/org/eclipse/persistence/jaxb/compiler/MappingsGenerator.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/jaxb/compiler/MappingsGenerator.java
-@@ -72,8 +72,8 @@ import org.eclipse.persistence.internal.
+--- a/org/eclipse/persistence/jaxb/compiler/MappingsGenerator.java
++++ b/org/eclipse/persistence/jaxb/compiler/MappingsGenerator.java
+@@ -72,10 +72,10 @@
+ import org.eclipse.persistence.internal.jaxb.many.ManyValue;
+ import org.eclipse.persistence.internal.jaxb.many.MapValue;
import org.eclipse.persistence.internal.jaxb.many.MapValueAttributeAccessor;
- import org.eclipse.persistence.sessions.Project;
-
--import org.eclipse.persistence.internal.libraries.asm.*;
--import org.eclipse.persistence.internal.libraries.asm.attrs.SignatureAttribute;
-+import org.objectweb.asm.*;
-+import org.objectweb.asm.attrs.SignatureAttribute;
- import org.eclipse.persistence.internal.oxm.XMLConversionManager;
- import org.eclipse.persistence.internal.queries.ContainerPolicy;
- import org.eclipse.persistence.internal.security.PrivilegedAccessHelper;
-@@ -2386,7 +2386,7 @@ public class MappingsGenerator {
- }
-
- public Class generateWrapperClass(String className, String attributeType, boolean isList, QName theQName) {
-- org.eclipse.persistence.internal.libraries.asm.ClassWriter cw = new org.eclipse.persistence.internal.libraries.asm.ClassWriter(false);
-+ org.objectweb.asm.ClassWriter cw = new org.objectweb.asm.ClassWriter(false);
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
++import org.objectweb.asm.Type;
+ import org.eclipse.persistence.internal.oxm.Constants;
- CodeVisitor cv;
- cw.visit(Constants.V1_5, Constants.ACC_PUBLIC, className.replace(".", "/"), org.eclipse.persistence.internal.libraries.asm.Type.getType(WrappedValue.class).getInternalName(), new String[0], null);
---- eclipselink-2.1.0.orig/org/eclipse/persistence/sdo/helper/DynamicClassWriter.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/sdo/helper/DynamicClassWriter.java
-@@ -25,10 +25,10 @@ import org.eclipse.persistence.sdo.SDODa
+ import org.eclipse.persistence.internal.oxm.NamespaceResolver;
+--- a/org/eclipse/persistence/sdo/helper/DynamicClassWriter.java
++++ b/org/eclipse/persistence/sdo/helper/DynamicClassWriter.java
+@@ -25,10 +25,10 @@
import org.eclipse.persistence.sdo.SDOProperty;
import org.eclipse.persistence.sdo.SDOType;
import org.eclipse.persistence.sdo.helper.extension.SDOUtil;
-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
--import org.eclipse.persistence.internal.libraries.asm.CodeVisitor;
--import org.eclipse.persistence.internal.libraries.asm.Constants;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
-import org.eclipse.persistence.internal.libraries.asm.Type;
+import org.objectweb.asm.ClassWriter;
-+import org.objectweb.asm.CodeVisitor;
-+import org.objectweb.asm.Constants;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
+import org.objectweb.asm.Type;
import org.eclipse.persistence.internal.security.PrivilegedAccessHelper;
import commonj.sdo.helper.HelperContext;
---- eclipselink-2.1.0.orig/org/eclipse/persistence/dynamic/DynamicClassWriter.java
-+++ eclipselink-2.1.0/org/eclipse/persistence/dynamic/DynamicClassWriter.java
-@@ -27,41 +27,41 @@ import org.eclipse.persistence.dynamic.D
- import org.eclipse.persistence.exceptions.DynamicException;
- import org.eclipse.persistence.internal.dynamic.DynamicEntityImpl;
- import org.eclipse.persistence.internal.helper.Helper;
--import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
--import org.eclipse.persistence.internal.libraries.asm.CodeVisitor;
--import org.eclipse.persistence.internal.libraries.asm.Type;
--import org.eclipse.persistence.internal.libraries.asm.attrs.SignatureAttribute;
-+import org.objectweb.asm.ClassWriter;
-+import org.objectweb.asm.CodeVisitor;
-+import org.objectweb.asm.Type;
-+import org.objectweb.asm.attrs.SignatureAttribute;
-
--import static org.eclipse.persistence.internal.libraries.asm.Constants.AASTORE;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_ENUM;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_FINAL;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_PRIVATE;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_PROTECTED;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_PUBLIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_STATIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_SUPER;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ACC_SYNTHETIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ALOAD;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ANEWARRAY;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ARETURN;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.BIPUSH;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.CHECKCAST;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.DUP;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.GETSTATIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ICONST_0;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ICONST_1;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ICONST_2;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ICONST_3;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ICONST_4;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ICONST_5;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.ILOAD;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.INVOKESPECIAL;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.INVOKESTATIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.INVOKEVIRTUAL;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.NEW;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.PUTSTATIC;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.RETURN;
--import static org.eclipse.persistence.internal.libraries.asm.Constants.V1_5;
-+import static org.objectweb.asm.Constants.AASTORE;
-+import static org.objectweb.asm.Constants.ACC_ENUM;
-+import static org.objectweb.asm.Constants.ACC_FINAL;
-+import static org.objectweb.asm.Constants.ACC_PRIVATE;
-+import static org.objectweb.asm.Constants.ACC_PROTECTED;
-+import static org.objectweb.asm.Constants.ACC_PUBLIC;
-+import static org.objectweb.asm.Constants.ACC_STATIC;
-+import static org.objectweb.asm.Constants.ACC_SUPER;
-+import static org.objectweb.asm.Constants.ACC_SYNTHETIC;
-+import static org.objectweb.asm.Constants.ALOAD;
-+import static org.objectweb.asm.Constants.ANEWARRAY;
-+import static org.objectweb.asm.Constants.ARETURN;
-+import static org.objectweb.asm.Constants.BIPUSH;
-+import static org.objectweb.asm.Constants.CHECKCAST;
-+import static org.objectweb.asm.Constants.DUP;
-+import static org.objectweb.asm.Constants.GETSTATIC;
-+import static org.objectweb.asm.Constants.ICONST_0;
-+import static org.objectweb.asm.Constants.ICONST_1;
-+import static org.objectweb.asm.Constants.ICONST_2;
-+import static org.objectweb.asm.Constants.ICONST_3;
-+import static org.objectweb.asm.Constants.ICONST_4;
-+import static org.objectweb.asm.Constants.ICONST_5;
-+import static org.objectweb.asm.Constants.ILOAD;
-+import static org.objectweb.asm.Constants.INVOKESPECIAL;
-+import static org.objectweb.asm.Constants.INVOKESTATIC;
-+import static org.objectweb.asm.Constants.INVOKEVIRTUAL;
-+import static org.objectweb.asm.Constants.NEW;
-+import static org.objectweb.asm.Constants.PUTSTATIC;
-+import static org.objectweb.asm.Constants.RETURN;
-+import static org.objectweb.asm.Constants.V1_5;
-
- /**
- * Write the byte codes of a dynamic entity class. The class writer will create
diff --git a/debian/patches/java7-compat.diff b/debian/patches/java7-compat.diff
deleted file mode 100644
index 77706a6..0000000
--- a/debian/patches/java7-compat.diff
+++ /dev/null
@@ -1,20 +0,0 @@
-Description: FTBFS with Java7 as default-java due to an API change in Java's SQL libraries
-Author: Niels Thykier <niels at thykier.net>
-Bug-Debian: http://bugs.debian.org/678288
-Forwarded: no
-Last-Update: <2012-06-20>
-
---- eclipselink-2.1.3.orig/org/eclipse/persistence/internal/jpa/jdbc/DataSourceImpl.java
-+++ eclipselink-2.1.3/org/eclipse/persistence/internal/jpa/jdbc/DataSourceImpl.java
-@@ -154,4 +154,11 @@ public class DataSourceImpl implements DataSource {
- return false;
- }
-
-+ /*
-+ * Java7 compat.
-+ */
-+ public java.util.logging.Logger getParentLogger() throws java.sql.SQLFeatureNotSupportedException {
-+ throw new java.sql.SQLFeatureNotSupportedException();
-+ }
-+
- }
diff --git a/debian/patches/series b/debian/patches/series
index cdad540..78b2c3c 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1,5 @@
+charset.patch
+cast.patch
+typeparameters.patch
disable_antlr3_embedded_copy.diff
disable_asm_embedded_copy.diff
-antlr32.diff
-java7-compat.diff
diff --git a/debian/patches/typeparameters.patch b/debian/patches/typeparameters.patch
new file mode 100644
index 0000000..9abef31
--- /dev/null
+++ b/debian/patches/typeparameters.patch
@@ -0,0 +1,11 @@
+--- a/org/eclipse/persistence/internal/oxm/XMLMarshaller.java
++++ b/org/eclipse/persistence/internal/oxm/XMLMarshaller.java
+@@ -69,7 +69,7 @@
+ public abstract class XMLMarshaller<
+ ABSTRACT_SESSION extends CoreAbstractSession,
+ CONTEXT extends Context<ABSTRACT_SESSION, DESCRIPTOR, ?, ?, ?, ?, ?>,
+- DESCRIPTOR extends Descriptor,
++ DESCRIPTOR extends Descriptor<?,?,?,?,?,?,?,?,?>,
+ MEDIA_TYPE extends MediaType,
+ NAMESPACE_PREFIX_MAPPER extends NamespacePrefixMapper,
+ OBJECT_BUILDER extends ObjectBuilder<?, ABSTRACT_SESSION, ?, XMLMarshaller>> extends Marshaller<CONTEXT, MEDIA_TYPE, NAMESPACE_PREFIX_MAPPER> {
diff --git a/debian/rules b/debian/rules
index 8a8e6f0..f48fe26 100755
--- a/debian/rules
+++ b/debian/rules
@@ -6,17 +6,11 @@ export JAVA_HOME=/usr/lib/jvm/default-java
dh --with javahelper $@
override_dh_auto_build:
- # Use upstream JPQL.g (copied to debian/) to rebuild JPQL lexer using ANTLR 3.2
- antlr3 -fo org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/ debian/JPQL.g
ant -f debian/build.xml
override_dh_auto_clean:
ant -f debian/build.xml clean
-override_jh_installlibs:
- jh_installlibs
- jh_manifest -v
-
get-orig-source:
cd $(dir $(firstword $(MAKEFILE_LIST)))../ && \
uscan \
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/eclipselink.git
More information about the pkg-java-commits
mailing list