private void addData(MetaDataType data) {
        if (data instanceof ApiMetaData) {
            ApiMetaData md = (ApiMetaData)data;

            int apiId = md.getApiId();
            String javaMethodDescriptor = toJavaMethodDescriptor(md);

            syncPut(this.apiIdMap, apiId, javaMethodDescriptor);
        } else if (data instanceof SqlMetaData) {
            SqlMetaData md = (SqlMetaData) data;

            int id = md.getSqlId();
            String sql = md.getSql();

            syncPut(sqlIdMap, id, sql);
        } else if (data instanceof SqlUidMetaData) {
            SqlUidMetaData md = (SqlUidMetaData) data;

            byte[] uid = md.getSqlUid();
            String sql = md.getSql();

            syncPut(sqlUidMap, uid, sql);
        } else if (data instanceof StringMetaData) {
            StringMetaData md = (StringMetaData) data;

            int id = md.getStringId();
            String string = md.getStringValue();

            syncPut(stringIdMap, id, string);
        }

        datas.add(data);
    }
@author Jongho Moon
@author jaehong.kim
agent-module/profiler-test/src/main/java/com/navercorp/pinpoint/profiler/test/TestDataSender.java