Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2006-2008 the original author or authors.
   *
   * 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 org.springframework.batch.item.database.support;
 
 import static org.springframework.batch.support.DatabaseType.DB2;
 import static org.springframework.batch.support.DatabaseType.DB2ZOS;
 import static org.springframework.batch.support.DatabaseType.DERBY;
 import static org.springframework.batch.support.DatabaseType.HSQL;
 import static org.springframework.batch.support.DatabaseType.H2;
 import static org.springframework.batch.support.DatabaseType.MYSQL;
 import static org.springframework.batch.support.DatabaseType.ORACLE;
 import static org.springframework.batch.support.DatabaseType.POSTGRES;
 import static org.springframework.batch.support.DatabaseType.SQLSERVER;
 import static org.springframework.batch.support.DatabaseType.SYBASE;
 
 import java.util.Map;
 
 
Factory bean for org.springframework.batch.item.database.PagingQueryProvider interface. The database type will be determined from the data source if not provided explicitly. Valid types are given by the org.springframework.batch.support.DatabaseType enum.

Author(s):
Dave Syer
 
 public class SqlPagingQueryProviderFactoryBean implements FactoryBean {
 
 	private DataSource dataSource;
 
 	private String databaseType;
 
 	private String fromClause;
 
 	private String whereClause;
 
 	private String selectClause;
 
 	private String sortKey;
 
 	private boolean ascending = true;
 
 
 
 	{
 	}

Parameters:
databaseType the databaseType to set
 
 	public void setDatabaseType(String databaseType) {
 		this. = databaseType;
 	}

Parameters:
dataSource the dataSource to set
 
 	public void setDataSource(DataSource dataSource) {
 		this. = dataSource;
 	}

Parameters:
fromClause the fromClause to set
 
 	public void setFromClause(String fromClause) {
 		this. = fromClause;
 	}

Parameters:
whereClause the whereClause to set
	public void setWhereClause(String whereClause) {
		this. = whereClause;
	}

Parameters:
selectClause the selectClause to set
	public void setSelectClause(String selectClause) {
		this. = selectClause;
	}

Parameters:
sortKey the sortKey to set
	public void setSortKey(String sortKey) {
		this. = sortKey;
	}

Parameters:
ascending
	public void setAscending(boolean ascending) {
		this. = ascending;	
	}

Get a org.springframework.batch.item.database.PagingQueryProvider instance using the provided properties and appropriate for the given database type.

	public Object getObject() throws Exception {
		try {
			type =  != null ? DatabaseType.valueOf(.toUpperCase()) : DatabaseType
		}
					"Could not inspect meta data for database type.  You have to supply it explicitly."e);
		}
		Assert.state(provider!=null"Should not happen: missing PagingQueryProvider for DatabaseType="+type);
		if (StringUtils.hasText()) {
		}
		provider.init();
		return provider;
	}

		return PagingQueryProvider.class;
	}

	public boolean isSingleton() {
		return true;
	}
New to GrepCode? Check out our FAQ X