@Override
        public byte[] doInTransform(Instrumentor instrumentor, ClassLoader classLoader, String className, Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws InstrumentException {

            InstrumentClass target = instrumentor.getInstrumentClass(classLoader, className, classfileBuffer);

            HbasePluginConfig config = new HbasePluginConfig(instrumentor.getProfilerConfig());
            final boolean paramsProfile = config.isParamsProfile();
            final boolean tableNameProfile = config.isTableNameProfile();
            final int hbaseVersion = HbaseVersion.getVersion(classLoader);
            final boolean dataSizeProfile = config.isDataSizeProfile();
            for (InstrumentMethod method : target.getDeclaredMethods(MethodFilters.name(HbasePluginConstants.tableMethodNames))) {
                int opType = DataOperationType.resolve(dataSizeProfile, method.getName(), method.getParameterTypes());
                method.addInterceptor(HbaseTableMethodInterceptor.class, va(paramsProfile, tableNameProfile, hbaseVersion, opType));
            }
            return target.toBytecode();
        }
The type Hbase plugin.

@author Victor.Zxy
@version 1.8.1
@since 2018/10/12
agent-module/plugins/hbase/src/main/java/com/navercorp/pinpoint/plugin/hbase/HbasePlugin.java