package org.trafodion.sql;

import java.io.IOException;
import java.net.URL;

import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.log4j.Logger;

public class CoprocessorUtils {
    private static Logger logger = Logger.getLogger(HBaseClient.class.getName());
    private static String[] coprocessors = null;

    static {
        init();
    }

    private static void init() {
        Configuration config = null;
        try {
            String path = System.getenv("MY_SQROOT") + "/etc/trafcoprocess.properties";
            config = new PropertiesConfiguration(path);
        } catch (Exception e) {
            logger.error("error when finding trafcoprocess.properties");
            e.printStackTrace();
        }

        if (config != null) {
            coprocessors = config.getStringArray("coprocessors");
        }
    }

    public static void addCoprocessor(String currentAllClassName, HTableDescriptor desc) throws IOException {
        if (coprocessors == null) {
            return;
        }
        for (String coprocess : coprocessors) {
            if (!currentAllClassName.contains(coprocess)) {
                desc.addCoprocessor(coprocess);
            }
        }
    }

    public static void main(String[] args) {
        System.out.println("================CoprocessorUtils.main======================");
        //init();
        if (coprocessors == null) {
            return;
        }
        for (String coprocess : coprocessors) {
            System.out.println(coprocess);
        }
    }
}

@@ -1,8 +1,946 @@
+// @@@ START COPYRIGHT @@@%0D%0A// //%0D%0A// // Licensed to the Apache Software Foundation (ASF) under one%0D%0A// // or more contributor license agreements.  See the NOTICE file%0D%0A// // distributed with this work for additional information%0D%0A// // regarding copyright ownership.  The ASF licenses this file%0D%0A// // to you under the Apache License, Version 2.0 (the%0D%0A// // %22License%22); you may not use this file except in compliance%0D%0A// // with the License.  You may obtain a copy of the License at%0D%0A// //%0D%0A// //   http://www.apache.org/licenses/LICENSE-2.0%0D%0A// //%0D%0A// // Unless required by applicable law or agreed to in writing,%0D%0A// // software distributed under the License is distributed on an%0D%0A// // %22AS IS%22 BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY%0D%0A// // KIND, either express or implied.  See the License for the%0D%0A// // specific language governing permissions and limitations%0D%0A// // under the License.%0D%0A// //%0D%0A// // @@@ END COPYRIGHT @@@%0D%0A%0D%0A
 package 

add copyright