/*
* � Copyright IBM Corp. 2011
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
package com.ibm.xsp.extlib.relational.component.jdbc.rest;
import java.util.ArrayList;
import java.util.List;
import javax.faces.context.FacesContext;
import javax.faces.el.ValueBinding;
import com.ibm.xsp.extlib.component.rest.AbstractRestService;
import com.ibm.xsp.extlib.relational.jdbc.model.SqlParameter;
import com.ibm.xsp.resource.DojoModuleResource;
/**
* @author Andrejus Chaliapinas
*
*/
public abstract class JdbcService extends AbstractRestService {
private Boolean compact;
private String contentType;
private String connectionName;
private String connectionUrl;
private String defaultOrderBy;
private String sqlCountQuery;
private String sqlFile;
private List<SqlParameter> sqlParameters;
private String sqlQuery;
private String sqlTable;
private Integer hintStart;
private Integer hintCount;
public JdbcService() {
}
@Override
public String getStoreDojoType() {
return null;
}
@Override
public DojoModuleResource getStoreDojoModule() {
return null;
}
public String getContentType() {
if (contentType != null) {
return contentType;
}
ValueBinding vb = getValueBinding("contentType"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setContentType(String contentType) {
this.contentType = contentType;
}
public boolean isCompact() {
if (compact != null) {
return compact;
}
ValueBinding vb = getValueBinding("compact"); //$NON-NLS-1$
if (vb != null) {
Boolean val = (Boolean)vb.getValue(getFacesContext());
if(val!=null) {
return val;
}
}
return false;
}
public void setCompact(boolean compact) {
this.compact = compact;
}
public String getConnectionName() {
if (connectionName != null) {
return connectionName;
}
ValueBinding vb = getValueBinding("connectionName"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setConnectionName(String connectionName) {
this.connectionName = connectionName;
}
public String getConnectionUrl() {
if (connectionUrl != null) {
return connectionUrl;
}
ValueBinding vb = getValueBinding("connectionUrl"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setConnectionUrl(String connectionUrl) {
this.connectionUrl = connectionUrl;
}
public String getDefaultOrderBy() {
if (defaultOrderBy != null) {
return defaultOrderBy;
}
ValueBinding vb = getValueBinding("defaultOrderBy"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setDefaultOrderBy(String defaultOrderBy) {
this.defaultOrderBy = defaultOrderBy;
}
public String getSqlCountQuery() {
if (sqlCountQuery != null) {
return sqlCountQuery;
}
ValueBinding vb = getValueBinding("sqlCountQuery"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setSqlCountQuery(String sqlCountQuery) {
this.sqlCountQuery = sqlCountQuery;
}
public String getSqlFile() {
if (sqlFile != null) {
return sqlFile;
}
ValueBinding vb = getValueBinding("sqlFile"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setSqlFile(String sqlFile) {
this.sqlFile = sqlFile;
}
public List<SqlParameter> getSqlParameters() {
return null;
}
public void addSqlParameter(SqlParameter attribute) {
if(sqlParameters==null) {
sqlParameters = new ArrayList<SqlParameter>();
}
sqlParameters.add(attribute);
}
public void setSqlParameters(List<SqlParameter> sqlParameters) {
this.sqlParameters = sqlParameters;
}
public String getSqlQuery() {
if (sqlQuery != null) {
return sqlQuery;
}
ValueBinding vb = getValueBinding("sqlQuery"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setSqlQuery(String sqlQuery) {
this.sqlQuery = sqlQuery;
}
public String getSqlTable() {
if (sqlTable != null) {
return sqlTable;
}
ValueBinding vb = getValueBinding("sqlTable"); //$NON-NLS-1$
if (vb != null) {
return (String)vb.getValue(getFacesContext());
}
return null;
}
public void setSqlTable(String sqlTable) {
this.sqlTable = sqlTable;
}
public int getHintStart() {
if (hintStart != null) {
return hintStart;
}
ValueBinding vb = getValueBinding("hintStart"); //$NON-NLS-1$
if (vb != null) {
Integer val = (Integer)vb.getValue(getFacesContext());
if(val!=null) {
return val;
}
}
return 0;
}
public void setHintStart(int hintStart) {
this.hintStart = hintStart;
}
public int getHintCount() {
if (hintCount != null) {
return hintCount;
}
ValueBinding vb = getValueBinding("hintCount"); //$NON-NLS-1$
if (vb != null) {
Integer val = (Integer)vb.getValue(getFacesContext());
if(val!=null) {
return val;
}
}
return 0;
}
public void setHintCount(int hintCount) {
this.hintCount = hintCount;
}
@Override
public Object saveState(FacesContext context) {
Object[] state = new Object[12];
state[0] = super.saveState(context);
state[1] = compact;
state[2] = contentType;
state[3] = connectionName;
state[4] = connectionUrl;
state[5] = defaultOrderBy;
state[6] = sqlCountQuery;
state[7] = sqlFile;
state[8] = sqlQuery;
state[9] = sqlTable;
state[10] = hintStart;
state[11] = hintCount;
return state;
}
@Override
public void restoreState(FacesContext context, Object value) {
Object[] state = (Object[])value;
super.restoreState(context, state[0]);
compact = (Boolean) state[1];
contentType = (String) state[2];
connectionName = (String) state[3];
connectionUrl = (String) state[4];
defaultOrderBy = (String) state[5];
sqlCountQuery = (String) state[6];
sqlFile = (String) state[7];
sqlQuery = (String) state[8];
sqlTable = (String) state[9];
hintStart = (Integer) state[10];
hintCount = (Integer) state[11];
}
}