001 package railo.runtime.sql.old; 002 003 import java.io.Serializable; 004 import java.util.StringTokenizer; 005 006 public class ZAliasedName 007 implements Serializable 008 { 009 010 public ZAliasedName() 011 { 012 strform_ = ""; 013 schema_ = null; 014 table_ = null; 015 column_ = null; 016 alias_ = null; 017 form_ = FORM_COLUMN; 018 } 019 020 public ZAliasedName(String s, int i) 021 { 022 strform_ = ""; 023 schema_ = null; 024 table_ = null; 025 column_ = null; 026 alias_ = null; 027 form_ = FORM_COLUMN; 028 form_ = i; 029 strform_ = new String(s); 030 StringTokenizer stringtokenizer = new StringTokenizer(s, "."); 031 switch(stringtokenizer.countTokens()) 032 { 033 case 1: // '\001' 034 if(i == FORM_TABLE) 035 table_ = new String(stringtokenizer.nextToken()); 036 else 037 column_ = new String(stringtokenizer.nextToken()); 038 break; 039 040 case 2: // '\002' 041 if(i == FORM_TABLE) 042 { 043 schema_ = new String(stringtokenizer.nextToken()); 044 table_ = new String(stringtokenizer.nextToken()); 045 } else 046 { 047 table_ = new String(stringtokenizer.nextToken()); 048 column_ = new String(stringtokenizer.nextToken()); 049 } 050 break; 051 052 case 3: // '\003' 053 default: 054 schema_ = new String(stringtokenizer.nextToken()); 055 table_ = new String(stringtokenizer.nextToken()); 056 column_ = new String(stringtokenizer.nextToken()); 057 break; 058 } 059 } 060 061 public String toString() 062 { 063 if(alias_ == null) 064 return strform_; 065 return strform_ + " " + alias_; 066 } 067 068 public String getSchema() 069 { 070 return schema_; 071 } 072 073 public String getTable() 074 { 075 return table_; 076 } 077 078 public String getColumn() 079 { 080 return column_; 081 } 082 083 public boolean isWildcard() 084 { 085 if(form_ == FORM_TABLE) 086 return table_ != null && table_.equals("*"); 087 return column_ != null && column_.indexOf('*') >= 0; 088 } 089 090 public String getAlias() 091 { 092 return alias_; 093 } 094 095 public void setAlias(String s) 096 { 097 alias_ = new String(s); 098 } 099 100 101 String strform_; 102 String schema_; 103 String table_; 104 String column_; 105 String alias_; 106 public static int FORM_TABLE = 1; 107 public static int FORM_COLUMN = 2; 108 int form_; 109 110 }