1 // -- FILE ------------------------------------------------------------------ 2 // name : AsnSimpleValueBase.java 3 // project : Panter: LI 4 // created : lep - 2007.01.16 5 // language : java 6 // environment: JDK 1.5.0 7 // copyright : (c) 2006 by Panter llc, Switzerland 8 // license : this is free software licensed under the GPL. see COPYING 9 // -------------------------------------------------------------------------- 10 package ch.panter.li.bi.asn.value; 11 12 import ch.panter.li.bi.asn.AsnValueBase; 13 import ch.panter.li.bi.asn.model.AsnType; 14 15 16 public abstract class AsnSimpleValueBase extends AsnValueBase 17 { 18 19 /* package protected */ AsnSimpleValueBase( final AsnType type ) 20 { 21 super( checkTypeIsSimple( type ) ); 22 } // AsnSimpleValueBase 23 24 /* package protected */ AsnSimpleValueBase( final AsnSimpleValueBase copy ) 25 { 26 super( copy ); 27 } // AsnSimpleValueBase 28 29 private static AsnType checkTypeIsSimple( final AsnType type ) 30 { 31 if ( type == null ) { 32 throw new IllegalArgumentException( "type may not be null" ); 33 } 34 if ( !type.isSimple() ) { 35 throw new IllegalArgumentException( "type '" + type + "' is complex but must be simple" ); 36 } 37 return type; 38 } // checkTypeIsSimple 39 40 } // class AsnSimpleValueBase 41 42 // -- EOF -------------------------------------------------------------------