openModeller  Version 1.5.0
TeStringParser.cpp
Go to the documentation of this file.
1 
31 
32 bool
34 {
35  string input = str_;
36  int i;
37 
38  // Throw out "terralib:" ************************************************************
39  i = input.find( "terralib>" );
40  if( i == -1)
41  return false;
42  input = input.substr(9, input.length());
43 
44  // Not a valid string, maybe a disk file name.
45  i = input.find( "@" );
46  if( i == -1)
47  {
48  str_ = input;
49  return false;
50  }
51 
52  // Get user_ ************************************************************************
53  i = input.find( ">" );
54  // Not a valid String.
55  if( i == -1)
56  return false;
57  user_ = input.substr(0, i);
58  input = input.substr(user_.length()+1, input.length());
59  // Get password_ ************************************************************************
60  i = input.find( "@" );
61  // Not a valid string.
62  if( i == -1)
63  return false;
64  password_ = input.substr(0, i);
65  input = input.substr(password_.length()+1, input.length());
66  // Get dbms_name_ ****************************************************************
67  i = input.find( ">" );
68  if( i == -1)
69  return false;
70  dbms_name_ = input.substr(0, i);
71  input = input.substr(dbms_name_.length()+1, input.length());
72  // Get host_ ************************************************************************
73  i = input.find( ">" );
74  if( i == -1)
75  return false;
76  host_ = input.substr(0, i);
77  input = input.substr(host_.length()+1, input.length());
78  // Get dbms_name_File ************************************************************
79  i = input.find( ">" );
80  if( i == -1)
81  return false;
82  database_ = input.substr(0, i);
83  input = input.substr(database_.length()+1, input.length());
84  // Get port_ ************************************************************************
85  i = input.find( ">" );
86  if( i == -1)
87  return false;
88  string s_port_ = input.substr(0, i);
89  input = input.substr(s_port_.length()+1, input.length());
90  port_ = atoi( s_port_.c_str() );
91  // Get layerName_ *******************************************************************
92  i = input.find( ">" );
93  if( i == -1)
94  {
95  layerName_ = input;
96  if(layerName_.length() == 0)
97  return false;
98  else
99  return true;
100  }
101  else
102  {
103  layerName_ = input.substr(0, i);
104  input = input.substr(layerName_.length()+1, input.length());
105  }
106 
107  // Get tableName_ *******************************************************************
108  i = input.find( ">" );
109  if( i != -1)
110  {
111  tableName_ = input.substr(0, i);
112  input = input.substr(tableName_.length()+1, input.length());
113  // Get columnName_ ***************************************************************
114  columnName_ = input;
115  }
116  else
117  tableName_ = input;
118 
119  // This is a vaid Url.
120  return true;
121 }
string columnName_
Column Name (Species)
bool parse()
Parser the url.
string str_
Terralib string.
string tableName_
Table Name (Species)
string layerName_
Layer in Database.