public abstract class AbstractWebClient
extends java.lang.Object
org.joty.server.JotyServer
)
via the http connection built on an implementation of AbstractWebConn
object (the createWebConn
abstract method drives the descendant to
make the inherent choice). Strictly joined with the JotyApplication
instance
and with the WrappedResultSet
it enables the client side of the Joty
technology to access the dbms via the web.
The http POST command is packaged through the use of the
BasicPostStatement
class that serves to build the unit of
information either the Accessor mode is active or not. This atom of
information arrives to the instance of this class already partially compiled
by the calling context and the class take cares of transforming and
definitely encoding the information, realizing in this way the Joty 2.0
communication protocol understandable by the Joty Server (see
#doRequest
).
The class is then equipped with the data structures useful to receive the
response from the server and provides a set of methods useful to process it,
one of the more important of them is #getDocumentFromRespContent
that
creates the base (a org.w3c.dom.Document
object) of further analysis:
the extraction of the data result set, of the returned values , of the reason
of failure, of a large binary content.
AbstractWebConn
,
BasicPostStatement
,
WrappedResultSet
Modifier and Type | Class and Description |
---|---|
class |
AbstractWebClient.DocumentDescriptor |
Modifier and Type | Field and Description |
---|---|
protected JotyApplication |
m_app |
protected java.lang.String |
m_authServerPath |
java.lang.String |
m_autoId |
protected byte[] |
m_auxiliaryBytes |
protected boolean |
m_buildingRemoteTransaction |
protected byte[] |
m_bytes |
java.lang.String |
m_command |
int |
m_currentReturnedValueIndex |
protected org.joty.common.AbstractDbManager |
m_dbManager |
protected boolean |
m_genTableJustSpecified |
protected java.util.Vector<java.lang.String> |
m_moreReqParms |
protected java.util.Vector<java.lang.String> |
m_moreReqParmsValues |
protected java.lang.String |
m_myHost |
java.util.Vector<org.joty.common.BasicPostStatement> |
m_postStatements |
protected java.lang.String |
m_queryStmnt |
protected org.joty.common.ParamContext |
m_refTransParamContext |
protected java.util.Vector<org.joty.common.ReportManager.Parameter> |
m_reportParams |
boolean |
m_responseSuccess |
java.lang.String |
m_responseText |
java.util.Vector<java.lang.String> |
m_returnedValues |
java.lang.String |
m_sessionID |
protected org.joty.common.Utilities.Stocker |
m_smallBlobs |
boolean |
m_urlValid |
protected javax.xml.parsers.DocumentBuilder |
m_xDocBuilder |
Constructor and Description |
---|
AbstractWebClient(JotyApplication app) |
Modifier and Type | Method and Description |
---|---|
protected void |
addReqParm(java.lang.String param,
java.lang.String value) |
void |
addSqlToPostStmnt(java.lang.String sql,
java.lang.String genTable) |
void |
addSqlToPostStmnt(java.lang.String sql,
java.lang.String genTable,
org.joty.common.BasicPostStatement postStmntPrm,
int nonManagedRollbackIdx) |
void |
addSqlToPostStmnt(java.lang.String sql,
java.lang.String genTable,
org.joty.common.BasicPostStatement postStmntPrm,
java.lang.String genIdExpr,
int nonManagedRollbackIdx) |
boolean |
addVerifyExpr(java.lang.String m_validationExpr) |
void |
beginTransaction() |
void |
buildingRemoteTransaction_reset()
Clears definition process of a "delayed transaction"
|
boolean |
buildingRemoteTransaction()
Informs whether the definition of a "delayed transaction" is being built
|
protected abstract AbstractWebConn |
createWebConn() |
protected void |
decodeWarningValue(java.lang.String reasonValue,
java.lang.String codeValue,
AbstractWebClient.DocumentDescriptor descriptor) |
protected abstract boolean |
doBinaryUpdate() |
protected abstract boolean |
doGet(AbstractWebConn webConn,
java.lang.Object manager) |
protected abstract boolean |
doPost(AbstractWebConn webConn,
java.lang.Object manager) |
protected abstract boolean |
doReport(java.lang.String renderType) |
protected boolean |
doRequest() |
protected boolean |
doRequest(org.joty.common.BasicPostStatement queryDefPostStatement,
java.lang.Object manager) |
protected abstract boolean |
doSqlQuery(org.joty.common.BasicPostStatement dataDefPostStatement,
java.lang.Object respManager) |
boolean |
endSession() |
byte[] |
getBytesFromRespDocument(AbstractWebClient.DocumentDescriptor docDescriptor,
java.lang.String elementTag) |
protected Common |
getCommon() |
abstract org.joty.common.AbstractDbManager |
getDbManager() |
AbstractWebClient.DocumentDescriptor |
getDocumentFromRespContent(boolean success) |
AbstractWebClient.DocumentDescriptor |
getDocumentFromRespContent(boolean success,
boolean checkGeneratedIds) |
java.lang.String |
getGenToken(int idIndex) |
java.lang.String |
getNodeContent(org.w3c.dom.Element node) |
java.lang.String |
getReturnedValue(int index) |
void |
getSuccess(AbstractWebClient.DocumentDescriptor descriptor) |
java.lang.String |
getValue(org.w3c.dom.Document xml,
java.lang.String nodeExpr) |
void |
getWarning(AbstractWebClient.DocumentDescriptor descriptor) |
java.lang.String |
getXmlContent(org.w3c.dom.Document xml) |
protected boolean |
is(java.lang.String strVal) |
void |
loadResultSetStructureFromXml(WrappedResultSet resultSet,
org.w3c.dom.Document xml) |
protected abstract void |
log(java.lang.String text) |
abstract boolean |
login(java.lang.Object manager) |
org.joty.common.BasicPostStatement |
prepareAddNewItems(JotyResultSet rs) |
protected void |
prepareReqCommand(java.lang.String command) |
boolean |
report(java.lang.String name,
java.lang.String renderType,
boolean twoProcess,
java.util.Vector<org.joty.common.ReportManager.Parameter> m_params) |
protected void |
resetReqBodyTerms() |
int |
returnedValuesAvailablePos() |
void |
setAuthServerUrl() |
void |
setSmallBlobsList(org.joty.common.Utilities.Stocker list) |
boolean |
sqlQuery(java.lang.String sql,
boolean onlyStructure,
boolean withBinaries,
org.joty.common.BasicPostStatement dataDefPostStatement,
java.lang.Object respManager) |
boolean |
updateBinary(java.lang.String sql,
byte[] bytes,
boolean auxiliary,
org.joty.common.BasicPostStatement postStatement) |
protected abstract boolean |
usesManager() |
protected javax.xml.parsers.DocumentBuilder m_xDocBuilder
protected java.lang.String m_myHost
public java.lang.String m_sessionID
public java.lang.String m_command
protected boolean m_buildingRemoteTransaction
protected java.util.Vector<java.lang.String> m_moreReqParms
protected java.util.Vector<java.lang.String> m_moreReqParmsValues
protected java.lang.String m_queryStmnt
public java.util.Vector<org.joty.common.BasicPostStatement> m_postStatements
public int m_currentReturnedValueIndex
public boolean m_urlValid
public java.lang.String m_responseText
public java.util.Vector<java.lang.String> m_returnedValues
protected byte[] m_bytes
protected byte[] m_auxiliaryBytes
protected JotyApplication m_app
public java.lang.String m_autoId
protected java.lang.String m_authServerPath
protected java.util.Vector<org.joty.common.ReportManager.Parameter> m_reportParams
public boolean m_responseSuccess
protected org.joty.common.Utilities.Stocker m_smallBlobs
protected boolean m_genTableJustSpecified
protected org.joty.common.AbstractDbManager m_dbManager
protected org.joty.common.ParamContext m_refTransParamContext
public AbstractWebClient(JotyApplication app)
protected void addReqParm(java.lang.String param, java.lang.String value)
public void addSqlToPostStmnt(java.lang.String sql, java.lang.String genTable)
public void addSqlToPostStmnt(java.lang.String sql, java.lang.String genTable, org.joty.common.BasicPostStatement postStmntPrm, int nonManagedRollbackIdx)
public void addSqlToPostStmnt(java.lang.String sql, java.lang.String genTable, org.joty.common.BasicPostStatement postStmntPrm, java.lang.String genIdExpr, int nonManagedRollbackIdx)
public boolean addVerifyExpr(java.lang.String m_validationExpr)
public void beginTransaction()
public boolean buildingRemoteTransaction()
public void buildingRemoteTransaction_reset()
public int returnedValuesAvailablePos()
protected boolean doRequest(org.joty.common.BasicPostStatement queryDefPostStatement, java.lang.Object manager)
protected abstract boolean usesManager()
protected abstract AbstractWebConn createWebConn()
protected abstract boolean doPost(AbstractWebConn webConn, java.lang.Object manager)
protected abstract boolean doGet(AbstractWebConn webConn, java.lang.Object manager)
protected abstract void log(java.lang.String text)
public AbstractWebClient.DocumentDescriptor getDocumentFromRespContent(boolean success)
public AbstractWebClient.DocumentDescriptor getDocumentFromRespContent(boolean success, boolean checkGeneratedIds)
public java.lang.String getGenToken(int idIndex)
public java.lang.String getNodeContent(org.w3c.dom.Element node)
public java.lang.String getReturnedValue(int index)
public void getSuccess(AbstractWebClient.DocumentDescriptor descriptor)
public java.lang.String getValue(org.w3c.dom.Document xml, java.lang.String nodeExpr)
public void getWarning(AbstractWebClient.DocumentDescriptor descriptor)
public abstract org.joty.common.AbstractDbManager getDbManager()
protected void decodeWarningValue(java.lang.String reasonValue, java.lang.String codeValue, AbstractWebClient.DocumentDescriptor descriptor)
public java.lang.String getXmlContent(org.w3c.dom.Document xml)
protected boolean is(java.lang.String strVal)
public void loadResultSetStructureFromXml(WrappedResultSet resultSet, org.w3c.dom.Document xml)
public abstract boolean login(java.lang.Object manager)
public org.joty.common.BasicPostStatement prepareAddNewItems(JotyResultSet rs)
protected void prepareReqCommand(java.lang.String command)
public boolean report(java.lang.String name, java.lang.String renderType, boolean twoProcess, java.util.Vector<org.joty.common.ReportManager.Parameter> m_params)
protected abstract boolean doReport(java.lang.String renderType)
protected void resetReqBodyTerms()
public void setAuthServerUrl()
public void setSmallBlobsList(org.joty.common.Utilities.Stocker list)
public boolean sqlQuery(java.lang.String sql, boolean onlyStructure, boolean withBinaries, org.joty.common.BasicPostStatement dataDefPostStatement, java.lang.Object respManager)
protected abstract boolean doSqlQuery(org.joty.common.BasicPostStatement dataDefPostStatement, java.lang.Object respManager)
public boolean updateBinary(java.lang.String sql, byte[] bytes, boolean auxiliary, org.joty.common.BasicPostStatement postStatement)
protected abstract boolean doBinaryUpdate()
protected boolean doRequest()
public boolean endSession()
public byte[] getBytesFromRespDocument(AbstractWebClient.DocumentDescriptor docDescriptor, java.lang.String elementTag)
protected Common getCommon()