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

Ostream.java

00001 package is;
00002 
00003 import java.sql.Date;
00004 import java.sql.Time;
00005 import java.lang.*;
00006 import java.util.Hashtable;
00007 
00012 public class Ostream
00013 {
00014     private String name;
00015     private String type;
00016     private StringBuffer data;
00017     
00018     Ostream( String name, String type )
00019     {
00020         this.name = name;
00021         this.type = type;
00022         data = new StringBuffer();      
00023     }
00024     
00025     String getData( )
00026     { 
00027         return ( "<o c=\"" + type + "\" i=\"" + name + "\">\n" + data + "</o>" );
00028     }
00029     
00035     public Ostream put( boolean v )
00036     {
00037         data.append("<a t=\"bool\">" + ( v == true ? "1" : "0" ) + "</a>\n");
00038         return this;
00039     }
00046     public Ostream put( byte v, boolean sign )
00047     {
00048         data.append("<a t=\"" + (sign ? "s8" : "u8") + "\">" + v + "</a>\n");
00049         return this;
00050     }
00051     
00058     public Ostream put( short v, boolean sign )
00059     {
00060         data.append("<a t=\"" + (sign ? "s16" : "u16") + "\">" + v + "</a>\n");
00061         return this;
00062     }
00063     
00070     public Ostream put( int v, boolean sign )
00071     {
00072         data.append("<a t=\"" + (sign ? "s32" : "u32") + "\">" + v + "</a>\n");
00073         return this;
00074     }
00075     
00081     public Ostream put( float v )
00082     {
00083         data.append("<a t=\"float\">" + v + "</a>\n");
00084         return this;
00085     }
00086     
00092     public Ostream put( double v )
00093     {
00094         data.append("<a t=\"double\">" + v + "</a>\n");
00095         return this;
00096     }
00097 
00103     public Ostream put( String v )
00104     {
00105         data.append("<a t=\"string\">" + ( v == null ? "" : Util.validate( v ) ) + "</a>\n");
00106         return this;
00107     }    
00108 
00114     public Ostream put( Date v )
00115     {
00116         data.append("<a t=\"date\">" + ( v == null ? 0 : v.getTime()/1000 ) + "</a>\n");
00117         return this;
00118     }
00119     
00125     public Ostream put( Time v )
00126     {
00127         data.append("<a t=\"time\">" + ( v == null ? 0 : v.getTime()/1000 ) + "</a>\n");
00128         return this;
00129     }    
00130     
00131     
00137     public Ostream put( boolean[] v )
00138     {
00139         int length = ( v == null ? 0 : v.length );
00140         data.append("<a t=\"bool\" s=\"" + length + "\">");
00141         for( int i = 0; i < length; i++ )
00142         {
00143             data.append(v[i] == true ? "1 " : "0 ");
00144         }
00145         data.append("</a>\n");
00146         return this;
00147     }
00148     
00155     public Ostream put( byte[] v, boolean sign )
00156     {
00157         int length = ( v == null ? 0 : v.length );
00158         data.append("<a t=\"" + (sign ? "s8" : "u8") + "\" s=\"" + length + "\">");
00159         for( int i = 0; i < length; i++ )
00160         {
00161             data.append(v[i] + " ");
00162         }
00163         data.append("</a>\n");
00164         return this;
00165     }
00166         
00173     public Ostream put( short[] v, boolean sign )
00174     {
00175         int length = ( v == null ? 0 : v.length );
00176         data.append("<a t=\"" + (sign ? "s16" : "u16") + "\" s=\"" + length + "\">");
00177         for( int i = 0; i < length; i++ )
00178         {
00179             data.append(v[i] + " ");
00180         }
00181         data.append("</a>\n");
00182         return this;
00183     }
00184     
00191     public Ostream put( int[] v, boolean sign )
00192     {
00193         int length = ( v == null ? 0 : v.length );
00194         data.append("<a t=\"" + (sign ? "s32" : "u32") + "\" s=\"" + length + "\">");
00195         for( int i = 0; i < length; i++ )
00196         {
00197             data.append(v[i] + " ");
00198         }
00199         data.append("</a>\n");
00200         return this;
00201     }
00202     
00208     public Ostream put( float[] v )
00209     {
00210         int length = ( v == null ? 0 : v.length );
00211         data.append("<a t=\"float\" s=\"" + length + "\">");
00212         for( int i = 0; i < length; i++ )
00213         {
00214             data.append(v[i] + " ");
00215         }
00216         data.append("</a>\n");
00217         return this;
00218     }
00219     
00225     public Ostream put( double[] v )
00226     {
00227         int length = ( v == null ? 0 : v.length );
00228         data.append("<a t=\"double\" s=\"" + length + "\">");
00229         for( int i = 0; i < length; i++ )
00230         {
00231             data.append(v[i] + " ");
00232         }
00233         data.append("</a>\n");
00234         return this;
00235     }
00236 
00242     public Ostream put( String[] v )
00243     {
00244         int length = ( v == null ? 0 : v.length );
00245         data.append("<a t=\"string\" s=\"" + length + "\">");
00246         for( int i = 0; i < length; i++ )
00247         {
00248             data.append("\"" + Util.validate( v[i] ) + "\" ");
00249         }
00250         data.append("</a>\n");
00251         return this;
00252     }
00253     
00259     public Ostream put( Date[] v )
00260     {
00261         int length = ( v == null ? 0 : v.length );
00262         data.append("<a t=\"date\" s=\"" + length + "\">");
00263         for( int i = 0; i < length; i++ )
00264         {
00265             data.append(v[i].getTime()/1000 + " ");
00266         }
00267         data.append("</a>\n");
00268         return this;
00269     }
00270     
00276     public Ostream put( Time[] v )
00277     {
00278         int length = ( v == null ? 0 : v.length );
00279         data.append("<a t=\"time\" s=\"" + length + "\">");
00280         for( int i = 0; i < length; i++ )
00281         {
00282             data.append(v[i].getTime()/1000 + " ");
00283         }
00284         data.append("</a>\n");
00285         return this;
00286     }
00287 }

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