|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.dhtmlx.connector.BaseConnector
public class BaseConnector
The Class BaseConnector. Class represents universal connector. It has not any component specific functionality, but can handler and parse common elements of incoming request.
Field Summary | |
---|---|
AccessManager |
access
Access Manager instance |
protected BaseFactory |
cfactory
The factory of related classes |
protected DataConfig |
config
The data configuration |
private java.sql.Connection |
db
DB connection |
protected DBType |
db_type
Used DB type |
protected boolean |
dynloading
Flag of dynamic loading mode |
protected int |
dynloading_size
Size of dynamic loading |
private boolean |
editing
Flag of update mode |
private java.lang.String |
encoding
Used encoding |
ConnectorBehavior |
event
Event extension |
private long |
exec_time
Execution timer. |
protected static javax.servlet.http.HttpServletRequest |
global_http_request
common http request object |
protected static javax.servlet.http.HttpServletResponse |
global_http_response
common http response object |
protected javax.servlet.http.HttpServletRequest |
http_request
active http request object |
protected javax.servlet.http.HttpServletResponse |
http_response
active http response object |
private int |
id_seed
Seed for auto id generation |
java.util.HashMap<java.lang.String,java.lang.String> |
incoming_data
The incoming_data. |
protected DataRequest |
request
The parsed incoming request. |
DataWrapper |
sql
Data Wrapper instance |
Constructor Summary | |
---|---|
BaseConnector(java.sql.Connection db)
Instantiates a new base connector. |
|
BaseConnector(java.sql.Connection db,
DBType db_type)
Instantiates a new base connector. |
|
BaseConnector(java.sql.Connection db,
DBType db_type,
BaseFactory a_factory)
Instantiates a new base connector. |
Method Summary | |
---|---|
void |
dynamic_loading(boolean state)
Enable dynamic loading Dynamic loading size set to 30 by default |
void |
dynamic_loading(int size)
Set size of dynamic loading |
void |
enable_log(java.lang.String path,
boolean output_to_client)
enable logging |
protected void |
end_run()
Finish connector execution The method not stops execution, it just called at the end of processing to measure execution time |
protected java.sql.Connection |
get_connection()
Gets the connection |
private void |
init_self(java.sql.Connection db,
DataWrapper dw,
BaseFactory a_factory)
Initialize self , after creation |
boolean |
is_select_mode()
Checks if current mode is a select mode. |
protected java.lang.String |
output_as_xml(ConnectorResultSet result)
Convert DB result set to string and add xml elements defined by other configuration options |
protected void |
output_as_xml(java.lang.String data)
Output xml string with correct headers |
protected void |
parse_request()
Parse http request Methods sets "dynloading", "editing" flags and fill request object with info about requested sorting|filtering options. |
java.lang.String |
render_connector(DataConfig config,
DataRequest request)
Build xml response, based on specified config and data |
protected java.lang.String |
render_set(ConnectorResultSet result)
Render DB result set as XML string |
void |
render_sql(java.lang.String sql,
java.lang.String id,
java.lang.String fields)
Render_sql. |
void |
render_sql(java.lang.String sql,
java.lang.String id,
java.lang.String fields,
java.lang.String extra)
Render_sql. |
void |
render_sql(java.lang.String sql,
java.lang.String id,
java.lang.String fields,
java.lang.String extra,
java.lang.String relation_id)
Build xml response for specified sql query in DB |
void |
render_table(java.lang.String table,
java.lang.String id,
java.lang.String fields)
Build xml response for specified table in DB |
void |
render_table(java.lang.String table,
java.lang.String id,
java.lang.String fields,
java.lang.String extra)
Build xml response for specified table in DB |
void |
render_table(java.lang.String table,
java.lang.String id,
java.lang.String fields,
java.lang.String extra,
java.lang.String relation_id)
Build xml response for specified table in DB |
java.lang.String |
render()
Build xml response, based on previously provided configuration All top level render methods, call this one, after parsing provided configuration |
private DataWrapper |
resolve_data_wrapper(DBType db_type,
BaseFactory a_factory)
Creates a DataWrapper object, based on provided settings |
protected java.lang.String |
resolve_parameter(java.lang.String name)
Resolve incoming http parameter Translate name of incoming parameter to the name of related DB field |
protected java.lang.String |
safe_field_name(java.lang.String str)
Ensure, that used field name can't be used for sql injection |
void |
servlet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Link connector to active request and response |
void |
set_encoding(java.lang.String name)
Sets used xml encoding. |
protected java.lang.String |
uuid()
Get unique ID |
protected java.lang.String |
xml_end()
Get closing top level xml tag |
protected java.lang.String |
xml_start()
Get opening top level xml tag |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static javax.servlet.http.HttpServletRequest global_http_request
protected static javax.servlet.http.HttpServletResponse global_http_response
protected javax.servlet.http.HttpServletRequest http_request
protected javax.servlet.http.HttpServletResponse http_response
public java.util.HashMap<java.lang.String,java.lang.String> incoming_data
protected DataConfig config
protected DataRequest request
protected BaseFactory cfactory
protected boolean dynloading
protected int dynloading_size
private java.lang.String encoding
private boolean editing
private java.sql.Connection db
private int id_seed
protected DBType db_type
private long exec_time
public AccessManager access
public DataWrapper sql
public ConnectorBehavior event
Constructor Detail |
---|
public BaseConnector(java.sql.Connection db)
db
- DB connectonpublic BaseConnector(java.sql.Connection db, DBType db_type)
db
- DB connectiondb_type
- type of used DBpublic BaseConnector(java.sql.Connection db, DBType db_type, BaseFactory a_factory)
db
- DB connectiondb_type
- type of used DBa_factory
- class factoryMethod Detail |
---|
private DataWrapper resolve_data_wrapper(DBType db_type, BaseFactory a_factory)
db_type
- type of used DBa_factory
- class factory, used by connector
private void init_self(java.sql.Connection db, DataWrapper dw, BaseFactory a_factory)
db
- DB connectiondw
- type of used DBa_factory
- class factoryprotected java.sql.Connection get_connection()
public void render_table(java.lang.String table, java.lang.String id, java.lang.String fields)
table
- the name of tableid
- the name of id fieldfields
- the name of data fieldspublic void render_table(java.lang.String table, java.lang.String id, java.lang.String fields, java.lang.String extra)
table
- the name of tableid
- the name of id fieldfields
- the name of data fieldsextra
- the name of extra fieldspublic void render_table(java.lang.String table, java.lang.String id, java.lang.String fields, java.lang.String extra, java.lang.String relation_id)
table
- the name of tableid
- the name of id fieldfields
- the name of data fieldsextra
- the name of extra fieldsrelation_id
- the name of relation fieldprotected java.lang.String uuid()
public void render_sql(java.lang.String sql, java.lang.String id, java.lang.String fields)
sql
- the sql queryid
- the name of id fieldfields
- the name of data fieldspublic void render_sql(java.lang.String sql, java.lang.String id, java.lang.String fields, java.lang.String extra)
sql
- the sql queryid
- the name of id fieldfields
- the name of data fieldsextra
- the name of extra fieldspublic void render_sql(java.lang.String sql, java.lang.String id, java.lang.String fields, java.lang.String extra, java.lang.String relation_id)
sql
- the sql queryid
- the name of id fieldfields
- the name of data fieldsextra
- the name of extra fieldsrelation_id
- the name of relation fieldpublic java.lang.String render_connector(DataConfig config, DataRequest request)
config
- the data configrequest
- the data request
public java.lang.String render()
protected java.lang.String safe_field_name(java.lang.String str)
str
- the field name to be checked
public void servlet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
request
- the http requestresponse
- the http responseprotected void parse_request()
protected java.lang.String resolve_parameter(java.lang.String name)
name
- the name of http parameter
protected java.lang.String render_set(ConnectorResultSet result) throws ConnectorOperationException
result
- the DB result
ConnectorOperationException
- the connector operation exceptionprotected void output_as_xml(java.lang.String data)
data
- the xml stringprotected java.lang.String output_as_xml(ConnectorResultSet result) throws ConnectorOperationException
result
- the DB result
ConnectorOperationException
- the connector operation exceptionprotected void end_run()
public void set_encoding(java.lang.String name)
name
- the encoding namepublic void dynamic_loading(int size)
size
- the sizepublic void dynamic_loading(boolean state)
state
- the mode, true will enable dyn. loading, false will disable itpublic void enable_log(java.lang.String path, boolean output_to_client)
path
- the path to the log fileoutput_to_client
- if mode is set, error data will be sent to client side ,
which provides a simpler debugging, but not safe for production environmentpublic boolean is_select_mode()
protected java.lang.String xml_start()
protected java.lang.String xml_end()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |