Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

Istream.java

00001 package is;
00002 
00003 import java.sql.Time;
00004 import java.sql.Date;
00005 import java.util.StringTokenizer;
00006 
00012 public class Istream
00013 {
00014     private StringTokenizer    st;
00015     private String    data;
00016     private String    name;
00017     
00018     Istream( String data )
00019     {
00020         this.data = data;
00021         st = new StringTokenizer( this.data, "\n" );
00022     
00023         String token = st.nextToken();
00024         name = token.substring( token.indexOf( "\" i=\"" ) + 5, token.lastIndexOf( "\"" ) );
00025     }
00026     
00027     String getData( )
00028     {
00029         return data;
00030     }
00031     
00032     String readName( )
00033     {
00034         return name;
00035     }
00036 
00041     public boolean getBoolean()
00042     {
00043         String token = st.nextToken();
00044         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00045     
00046         int i = Integer.parseInt( val );
00047         return ( i == 0 ? false : true );
00048     }
00049     
00054     public byte getByte()
00055     {
00056         String token = st.nextToken();
00057         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00058     
00059         return Byte.parseByte( val );
00060     }
00061     
00066     public short getShort( )
00067     {
00068         String token = st.nextToken();
00069         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00070     
00071         return Short.parseShort( val );
00072     }
00073     
00078     public int getInt( )
00079     {
00080         String token = st.nextToken();
00081         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00082     
00083         return Integer.parseInt( val );
00084     }
00085     
00090     public float getFloat()
00091     {
00092         String token = st.nextToken();
00093         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00094     
00095         return Float.parseFloat( val );
00096     }
00097     
00102     public double getDouble()
00103     {
00104         String token = st.nextToken();
00105         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00106     
00107         return Double.parseDouble( val );
00108     }
00109     
00114     public String getString()
00115     {
00116         String token = st.nextToken();
00117         StringBuffer buffer = new StringBuffer(token);
00118         while( !token.endsWith( "</a>") )
00119         {
00120                 token = st.nextToken();
00121                 buffer.append("\n" + token);
00122         }
00123         String val = buffer.substring( buffer.indexOf( ">" ) + 1, buffer.lastIndexOf( "<" ) );
00124         return Util.invalidate( val );
00125     }
00126     
00131     public Date getDate()
00132     {
00133         String token = st.nextToken();
00134         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00135     
00136         return new Date( Long.parseLong( val ) * 1000 );
00137     }
00138 
00143     public Time getTime()
00144     {
00145         String token = st.nextToken();
00146         String val = token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) );
00147     
00148         return new Time( Long.parseLong( val ) * 1000 );
00149     }
00150 
00155     public boolean[] getBooleanArray( )
00156     {
00157         String token = st.nextToken();
00158         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00159     
00160         boolean array[] = new boolean[size];
00161         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00162 
00163         for( int i = 0; i < size; i++ )
00164         {
00165                 int b = Integer.parseInt( val.nextToken() );
00166                 array[i] = ( b == 0 ? false : true );
00167         }
00168         return array;
00169     }
00170     
00175     public byte[] getByteArray( )
00176     {
00177         String token = st.nextToken();
00178         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00179     
00180         byte array[] = new byte[size];
00181         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00182 
00183         for( int i = 0; i < size; i++ )
00184         {
00185                 array[i] = Byte.parseByte( val.nextToken() );
00186         }
00187         return array;
00188     }
00189     
00194     public short[] getShortArray( )
00195     {
00196         String token = st.nextToken();
00197         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00198     
00199         short array[] = new short[size];
00200         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00201 
00202         for( int i = 0; i < size; i++ )
00203         {
00204                 array[i] = Short.parseShort( val.nextToken() );
00205         }
00206         return array;
00207     }
00208     
00213     public int[] getIntArray( )
00214     {
00215         String token = st.nextToken();
00216         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00217     
00218         int array[] = new int[size];
00219         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00220 
00221         for( int i = 0; i < size; i++ )
00222         {
00223                 array[i] = Integer.parseInt( val.nextToken() );
00224         }
00225         return array;
00226     }
00227     
00232     public float[] getFloatArray( )
00233     {
00234         String token = st.nextToken();
00235         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00236     
00237         float array[] = new float[size];
00238         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00239 
00240         for( int i = 0; i < size; i++ )
00241         {
00242                 array[i] = Float.parseFloat( val.nextToken() );
00243         }
00244         return array;
00245     }
00246     
00251     public double[] getDoubleArray( )
00252     {
00253         String token = st.nextToken();
00254         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00255     
00256         double array[] = new double[size];
00257         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00258 
00259         for( int i = 0; i < size; i++ )
00260         {
00261                 array[i] = Double.parseDouble( val.nextToken() );
00262         }
00263         return array;
00264     }
00265     
00270     public String[] getStringArray( )
00271     {
00272         String token = st.nextToken();
00273         StringBuffer buffer = new StringBuffer(token);
00274         while( !token.endsWith( "</a>") )
00275         {
00276                 token = st.nextToken();
00277                 buffer.append("\n" + token);
00278         }
00279         int start = buffer.indexOf( "s=\"" ) + 3;
00280         int end = buffer.indexOf( "\"", start );
00281         int size = Integer.parseInt ( buffer.substring( start, end ) );
00282     
00283         String array[] = new String[size];
00284         String values = buffer.substring( buffer.indexOf( ">" ) + 1, buffer.lastIndexOf( "<" ) );
00285 
00286         start = 0;
00287         for( int i = 0; i < size; i++ )
00288         {
00289                 start = values.indexOf( "\"", start );
00290                 start++;
00291                 end = values.indexOf( "\"", start );
00292         
00293                 array[i] = Util.invalidate( values.substring( start, end ) );
00294                 start = end + 1;
00295         }
00296         return array;
00297     }
00298     
00303     public Date[] getDateArray( )
00304     {
00305         String token = st.nextToken();
00306         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00307     
00308         Date array[] = new Date[size];
00309         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00310 
00311         String date;
00312         for( int i = 0; i < size; i++ )
00313         {
00314                 array[i] = new Date( Long.parseLong( val.nextToken() ) * 1000 );
00315         }
00316         return array;
00317     }
00318     
00323     public Time[] getTimeArray( )
00324     {
00325         String token = st.nextToken();
00326         int size = Integer.parseInt ( token.substring( token.indexOf( "s=\"" ) + 3, token.lastIndexOf( "\"" ) ) );
00327     
00328         Time array[] = new Time[size];
00329         StringTokenizer val = new StringTokenizer ( token.substring( token.indexOf( ">" ) + 1, token.lastIndexOf( "<" ) ) );
00330 
00331         for( int i = 0; i < size; i++ )
00332         {
00333                 array[i] = new Time( Long.parseLong( val.nextToken() ) * 1000 );        
00334         }
00335         return array;
00336     }
00337 }

Generated on Thu Jul 15 09:55:44 2004 for SCT DAQ/DCS Software - Java by doxygen 1.3.5