Author: dbrosius Date: Tue Oct 15 05:52:15 2013 New Revision: 1532197 URL: http://svn.apache.org/r1532197 Log: make clone() more user friendly
Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Attribute.java commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Constant.java commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/ClassGen.java commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/CodeExceptionGen.java commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/FieldGenOrMethodGen.java commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LineNumberGen.java commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LocalVariableGen.java Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Attribute.java URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Attribute.java?rev=1532197&r1=1532196&r2=1532197&view=diff ============================================================================== --- commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Attribute.java (original) +++ commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Attribute.java Tue Oct 15 05:52:15 2013 @@ -298,18 +298,18 @@ public abstract class Attribute implemen * @return shallow copy of this attribute */ @Override - public Object clone() + public Attribute clone() { - Object o = null; + Attribute attr = null; try { - o = super.clone(); + attr = (Attribute) super.clone(); } catch (CloneNotSupportedException e) { - e.printStackTrace(); // Never occurs + throw new Error("Clone Not Supported"); // never happens } - return o; + return attr; } /** Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Constant.java URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Constant.java?rev=1532197&r1=1532196&r2=1532197&view=diff ============================================================================== --- commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Constant.java (original) +++ commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Constant.java Tue Oct 15 05:52:15 2013 @@ -21,6 +21,7 @@ import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; import java.io.Serializable; + import org.apache.bcel.Constants; import org.apache.bcel.util.BCELComparator; @@ -109,8 +110,12 @@ public abstract class Constant implement @Override - public Object clone() throws CloneNotSupportedException { - return super.clone(); + public Constant clone() { + try { + return (Constant) super.clone(); + } catch (CloneNotSupportedException e) { + throw new Error("Clone Not Supported"); // never happens + } } Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/ClassGen.java URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/ClassGen.java?rev=1532197&r1=1532196&r2=1532197&view=diff ============================================================================== --- commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/ClassGen.java (original) +++ commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/ClassGen.java Tue Oct 15 05:52:15 2013 @@ -560,12 +560,11 @@ public class ClassGen extends AccessFlag @Override - public Object clone() { + public ClassGen clone() { try { - return super.clone(); + return (ClassGen) super.clone(); } catch (CloneNotSupportedException e) { - System.err.println(e); - return null; + throw new Error("Clone Not Supported"); // never happens } } Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/CodeExceptionGen.java URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/CodeExceptionGen.java?rev=1532197&r1=1532196&r2=1532197&view=diff ============================================================================== --- commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/CodeExceptionGen.java (original) +++ commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/CodeExceptionGen.java Tue Oct 15 05:52:15 2013 @@ -177,12 +177,11 @@ public final class CodeExceptionGen impl @Override - public Object clone() { + public CodeExceptionGen clone() { try { - return super.clone(); + return (CodeExceptionGen) super.clone(); } catch (CloneNotSupportedException e) { - System.err.println(e); - return null; + throw new Error("Clone Not Supported"); // never happens } } } Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/FieldGenOrMethodGen.java URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/FieldGenOrMethodGen.java?rev=1532197&r1=1532196&r2=1532197&view=diff ============================================================================== --- commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/FieldGenOrMethodGen.java (original) +++ commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/FieldGenOrMethodGen.java Tue Oct 15 05:52:15 2013 @@ -19,6 +19,7 @@ package org.apache.bcel.generic; import java.util.ArrayList; import java.util.List; + import org.apache.bcel.Constants; import org.apache.bcel.classfile.AccessFlags; import org.apache.bcel.classfile.Attribute; @@ -145,12 +146,11 @@ public abstract class FieldGenOrMethodGe @Override - public Object clone() { + public FieldGenOrMethodGen clone() { try { - return super.clone(); + return (FieldGenOrMethodGen) super.clone(); } catch (CloneNotSupportedException e) { - System.err.println(e); - return null; + throw new Error("Clone Not Supported"); // never happens } } } Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LineNumberGen.java URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LineNumberGen.java?rev=1532197&r1=1532196&r2=1532197&view=diff ============================================================================== --- commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LineNumberGen.java (original) +++ commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LineNumberGen.java Tue Oct 15 05:52:15 2013 @@ -85,12 +85,11 @@ public class LineNumberGen implements In @Override - public Object clone() { + public LineNumberGen clone() { try { - return super.clone(); + return (LineNumberGen) super.clone(); } catch (CloneNotSupportedException e) { - System.err.println(e); - return null; + throw new Error("Clone Not Supported"); // never happens } } Modified: commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LocalVariableGen.java URL: http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LocalVariableGen.java?rev=1532197&r1=1532196&r2=1532197&view=diff ============================================================================== --- commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LocalVariableGen.java (original) +++ commons/proper/bcel/trunk/src/main/java/org/apache/bcel/generic/LocalVariableGen.java Tue Oct 15 05:52:15 2013 @@ -203,12 +203,11 @@ public class LocalVariableGen implements @Override - public Object clone() { + public LocalVariableGen clone() { try { - return super.clone(); + return (LocalVariableGen) super.clone(); } catch (CloneNotSupportedException e) { - System.err.println(e); - return null; + throw new Error("Clone Not Supported"); // never happens } } }