com.zentense.step2.model
Class AutoI18NModel

java.lang.Object
  extended by com.zentense.step2.model.ResultSetModel
      extended by com.zentense.step2.model.AutoModel
          extended by com.zentense.step2.model.AutoI18NModel

public class AutoI18NModel
extends AutoModel

An extended AutoModel that supports internationalized columns. When a model has columns that are foreign keys to table 'i18n', then these columns are considered I18N columns, and the model an AutoI18NModel.

Author:
kurt
See Also:
ResultSetI18NModel

Field Summary
protected  ResultSetModel model
          The model used for delegating functionality
 
Fields inherited from class com.zentense.step2.model.AutoModel
name
 
Fields inherited from class com.zentense.step2.model.ResultSetModel
idName, logLevel, prepared, preparedTableId, RSConcur, RSType, table
 
Constructor Summary
AutoI18NModel()
           
AutoI18NModel(java.lang.String name, java.lang.String idName, java.lang.String tableName)
          Constructor
 
Method Summary
 void delete(java.lang.Object id)
          Executes a delete query (delete from table where id= ...)
 void deleteI18N(View v)
          Deletes all i18n texts (all languages) of any I18N column on current row from given view.
 View doQuery(java.lang.String query)
          Executes a SQL query using JDBC.
 void doUpdate(java.lang.String query)
          Executes a SQL statement using JDBC.
 java.lang.String[] getI18N()
           
 java.lang.String getLang()
          Gets current language
 int getLastI18NId()
          Returns the last i18n_id from i18n table
 ResultSetModel getModel()
          Gets the ResultSetModel used for performing queries
 void insertI18N(int id, java.lang.String txt, java.lang.String lang)
          Inserts a text into I18N table
 int insertI18N(java.lang.String txt, java.lang.String lang)
          Inserts a text into I18N table.
 ResultSetModel prepare(int type, int concur)
          Sets the features for the next resultset generated by this model
 void setLang(java.lang.String lang)
          Sets language manually.
 void setModel(ResultSetModel model)
          Sets the ResultSetModel used for performing queries
 boolean textExists(int id, java.lang.String lang)
          Exists a text in current language?
 void updateI18N(int id, java.lang.String txt, java.lang.String lang)
          Updates a internationalized text in i18n texts table
 
Methods inherited from class com.zentense.step2.model.AutoModel
deleteCascade, deleteCascade, deleteCascade, deleteCascade, getPK, getPKArray
 
Methods inherited from class com.zentense.step2.model.ResultSetModel
addPrepared, clearPrepared, deleteAll, deleteBy, doPrepared, exists, find, find, findById, genSQL, genSQL, genSQL, getAll, getAllOrderedBy, getConnection, getCount, getMaxId, getPK, getPrepared, getTableName, insertMode, insertMode, loopMode, prepareStatements, rowMode, update, updateMode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

model

protected ResultSetModel model
The model used for delegating functionality

Constructor Detail

AutoI18NModel

public AutoI18NModel()

AutoI18NModel

public AutoI18NModel(java.lang.String name,
                     java.lang.String idName,
                     java.lang.String tableName)
Constructor

Method Detail

setModel

public final void setModel(ResultSetModel model)
Sets the ResultSetModel used for performing queries


getModel

public final ResultSetModel getModel()
Gets the ResultSetModel used for performing queries


getLang

public java.lang.String getLang()
Gets current language


setLang

public void setLang(java.lang.String lang)
Sets language manually. Notice that invoking this method disables autoLang

Parameters:
New - language

getI18N

public java.lang.String[] getI18N()

getLastI18NId

public final int getLastI18NId()
                        throws java.lang.Exception
Returns the last i18n_id from i18n table

Parameters:
vm - A RequestRuntime instance
Returns:
The biggest identifier on i18n table
Throws:
java.lang.Exception

insertI18N

public final int insertI18N(java.lang.String txt,
                            java.lang.String lang)
                     throws java.lang.Exception
Inserts a text into I18N table. Assigns automatically a new id

Parameters:
txt - The text
lang - Language described as ISO code
Throws:
java.lang.Exception

insertI18N

public final void insertI18N(int id,
                             java.lang.String txt,
                             java.lang.String lang)
Inserts a text into I18N table

Parameters:
id - Identifier for this text
txt - The text
lang - Language described as ISO code

updateI18N

public final void updateI18N(int id,
                             java.lang.String txt,
                             java.lang.String lang)
Updates a internationalized text in i18n texts table

Parameters:
id - Identifier for this text
txt - The new text
lang - Language described as ISO code

textExists

public final boolean textExists(int id,
                                java.lang.String lang)
                         throws java.lang.Exception
Exists a text in current language?

Parameters:
id - Identifier of internationalized text
Returns:
returns true if the text exists in current language
Throws:
java.lang.Exception - If something goes wrong

prepare

public ResultSetModel prepare(int type,
                              int concur)
Description copied from class: ResultSetModel
Sets the features for the next resultset generated by this model

Overrides:
prepare in class ResultSetModel
Parameters:
type - JDBC Resultset scroll type
concur - JDBC Resultset concurrency
Returns:
The model itself

doQuery

public final View doQuery(java.lang.String query)
Description copied from class: ResultSetModel
Executes a SQL query using JDBC. The query must be a select or other query that generate results. Use doUpdate for inserts, updates, deletes and alter tables. If rowMode was invoked before this method, the returned view is open and ready to be accessed. Otherwise view is positiones before the first row and a call to next or first must be done in order to position the view at the first available row.

Overrides:
doQuery in class ResultSetModel
Parameters:
query - SQL statement to execute
Returns:
An instance of ResultSetView containing the ResultSet

doUpdate

public final void doUpdate(java.lang.String query)
Description copied from class: ResultSetModel
Executes a SQL statement using JDBC. The statement must be a insert, delete, updates, or alter table because this methods does not return results.

Overrides:
doUpdate in class ResultSetModel
Parameters:
query - SQL statement to execute

delete

public final void delete(java.lang.Object id)
Description copied from class: ResultSetModel
Executes a delete query (delete from table where id= ...)

Overrides:
delete in class ResultSetModel
Parameters:
id - Identifier value of row to be deleted

deleteI18N

public final void deleteI18N(View v)
Deletes all i18n texts (all languages) of any I18N column on current row from given view.


 

© Zentense 2008