001/* 
002 * JKNIV, whinstone one contract to access your database.
003 * 
004 * Copyright (C) 2017, the original author or authors.
005 *
006 * This library is free software; you can redistribute it and/or
007 * modify it under the terms of the GNU Lesser General Public
008 * License as published by the Free Software Foundation; either
009 * version 2.1 of the License.
010 * 
011 * This library is distributed in the hope that it will be useful,
012 * but WITHOUT ANY WARRANTY; without even the implied warranty of
013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
014 * Lesser General Public License for more details.
015 * 
016 * You should have received a copy of the GNU Lesser General Public
017 * License along with this library; if not, write to the Free Software Foundation, Inc., 
018 * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
019 */
020package net.sf.jkniv.whinstone.cassandra;
021
022import java.util.Properties;
023
024import net.sf.jkniv.sqlegance.RepositoryType;
025import net.sf.jkniv.sqlegance.SqlContext;
026import net.sf.jkniv.whinstone.Repository;
027import net.sf.jkniv.whinstone.spi.RepositoryFactory;
028
029public class RepositoryFactoryCassandra implements RepositoryFactory
030{
031    
032    @Override
033    public Repository newInstance()
034    {
035        return new RepositoryCassandra();
036    }
037    
038    @Override
039    public Repository newInstance(Properties props)
040    {
041        return new RepositoryCassandra(props);
042    }
043    
044    @Override
045    public Repository newInstance(Properties props, SqlContext sqlContext)
046    {
047        return new RepositoryCassandra(props, sqlContext);
048    }
049    
050    @Override
051    public Repository newInstance(String sqlContext)
052    {
053        return new RepositoryCassandra(sqlContext);
054    }
055    
056    @Override
057    public Repository newInstance(SqlContext sqlContext)
058    {
059        return new RepositoryCassandra(sqlContext);
060    }
061    
062    @Override
063    public RepositoryType getType()
064    {
065        return RepositoryType.CASSANDRA;
066    }
067    
068}