Package org.hbaseexplorer.domain

Source Code of org.hbaseexplorer.domain.Connection

package org.hbaseexplorer.domain;

import java.io.IOException;
import java.io.Serializable;
import java.util.ArrayList;
import javax.swing.JOptionPane;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.MasterNotRunningException;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.hbaseexplorer.exception.ExplorerException;

/**
*
* @author zaharije
*/
public class Connection implements Serializable {
    private HBaseConfiguration hbaseConfiguration;

    private HBaseAdmin hbaseAdmin;

    private ArrayList<Table> tableList;

    public Connection(Configuration configuration) {
        hbaseConfiguration = new HBaseConfiguration(configuration);
        tableList = new ArrayList<Table>();
    }

    public void connect() {
        try {
            hbaseAdmin = new HBaseAdmin(hbaseConfiguration);
            refreshTables();
        }
        catch(MasterNotRunningException me) {
            throw new ExplorerException("Cannot connect to " + hbaseConfiguration.get("hbase.zookeeper.quorum"));
        }
    }

    public void refreshTables() {
        try {
            tableList = new ArrayList<Table>();
            HTableDescriptor hTables[] = hbaseAdmin.listTables();

            for(HTableDescriptor tableDescriptor : hTables) {
                tableList.add(new Table(tableDescriptor, this));
            }
        }
        catch(IOException ioe) {
            throw new ExplorerException("Error while getting table list!");
        }
    }

    public String getName() {
        return hbaseConfiguration.get("hbase.zookeeper.quorum");
    }
   
    public ArrayList<Table> getTableList() {
        return tableList;
    }

    public HBaseConfiguration getHbaseConfiguration() {
        return hbaseConfiguration;
    }

    public HBaseAdmin getHbaseAdmin() {
        return hbaseAdmin;
    }

    public String toString() {
        return getName();
    }
}
TOP

Related Classes of org.hbaseexplorer.domain.Connection

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.