view src/main/java/jp/ac/u_ryukyu/ie/cr/tatsuki/xml/TimeMeasurementJuGrix.java @ 13:7c544969d4c9

add TransactionPersocondMeasurement
author one
date Wed, 26 Nov 2014 13:00:26 +0900
parents 33b15ef21dcd
children
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.tatsuki.xml;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.LinkedList;
import java.util.Random;

import javax.xml.parsers.ParserConfigurationException;

import org.xml.sax.SAXException;

import jp.ac.u_ryukyu.cr.ie.tatsuki.bbs.JuGrix;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.transaction.DefaultTreeNode;
import jp.ac.u_ryukyu.ie.cr.tatsuki.jungle.store.index.ParentIndex;

public class TimeMeasurementJuGrix {

  static int roopCount = 1;
  static boolean useIndex = true;

  public static void main(String args[]) throws FileNotFoundException, ParserConfigurationException, SAXException,
      IOException {
    System.out.println("start : ");

    String orgId = "o:2";
    String personId = "p:1";
    LinkedList<String> filterIds = new LinkedList<String>();
    filterIds.add("r:5");
    long t2;
    long t1;
    t1 = System.currentTimeMillis();
    JuGrix jugrix = extendXmlTree.createJuGrix(useIndex);
    t2 = System.currentTimeMillis();
    System.out.println("create tree =" + (t2 - t1) + "s");
    Random random = new Random();

    t1 = System.currentTimeMillis();
    functions(jugrix, orgId, personId, filterIds);
    t2 = System.currentTimeMillis();
    System.out.println("1回目=" + (t2 - t1) + "s");

    long sumTime = 0;
    for (int count = 0; count < roopCount; count++) {

      int ran = random.nextInt(30);
      orgId = "o:" + String.valueOf(ran);
      personId = "p:" + String.valueOf(ran);
      t1 = System.currentTimeMillis();
      functions(jugrix, orgId, personId, filterIds);
      t2 = System.currentTimeMillis();
      sumTime = (t2 - t1);
      System.out.println(count + "回目=" + sumTime + "s");
    }
    System.out.println("平均 = " + sumTime + "s");
    System.out.println("end");
  }

  private static void functions(JuGrix jugrix, String orgId, String personId, LinkedList<String> filterIds) {
    long t1 = System.currentTimeMillis();
    jugrix.childOrganizationIds(orgId, filterIds);
    long t2 = System.currentTimeMillis();
    // System.out.println("childOrganizationIds = " + (t2-t1));
    jugrix.competentRoleId(personId);
    long t3 = System.currentTimeMillis();
    // System.out.println("competentRoleId = " +(t3-t2));
    jugrix.concurrentRoleIds(personId);
    long t4 = System.currentTimeMillis();
    // System.out.println("concurrentRoleIds = "+(t4-t3));
    jugrix.deepChildOrganizationIds(orgId, filterIds);
    long t5 = System.currentTimeMillis();
    // System.out.println("deepChildOrganizationIds = "+(t5-t4));
    jugrix.deepChildOrganizationIdsPlus(orgId, filterIds);
    long t6 = System.currentTimeMillis();
    // System.out.println("deepChildOrganizationIdsPlus = "+(t6-t5));
    jugrix.deepParentOrganizationIds(orgId, filterIds);
    long t7 = System.currentTimeMillis();
    // System.out.println("deepParentOrganizationIds = "+(t7-t6));
    jugrix.deepParentOrganizationIdsPlus(orgId, filterIds);
    long t8 = System.currentTimeMillis();
    // System.out.println("deepParentOrganizationIdsPlus = "+(t8-t7));
    jugrix.deepPersonIds(orgId, filterIds);
    long t9 = System.currentTimeMillis();
    // System.out.println("deepPersonIds = "+(t9-t8));
    jugrix.isActive(personId);
    long t10 = System.currentTimeMillis();
    // System.out.println("isActive = "+(t10-t9));
    jugrix.parentOrganizationIds(orgId, filterIds);
    long t11 = System.currentTimeMillis();
    // System.out.println("parentOrganizationIds = "+(t11-t10));
    jugrix.personIds(orgId, filterIds);
    long t12 = System.currentTimeMillis();
    // System.out.println("personIds = "+(t12-t11));
    jugrix.roleDescriptionElementIds(orgId, filterIds);
    long t13 = System.currentTimeMillis();
    // System.out.println("roleDescriptionElementIds = "+(t13-t12));
    jugrix.roleIds(orgId, filterIds);
    long t14 = System.currentTimeMillis();
    // System.out.println("roleIds = "+(t14-t13));
    jugrix.rolePriority(personId, "r:34");
    long t15 = System.currentTimeMillis();
    // System.out.println("rolePriority = "+(t15-t14));
    jugrix.stringPathToId("r:path:エスアールエルテクノシステム/臨検システム部/業務システムグループ");
    long t16 = System.currentTimeMillis();
    // System.out.println("stringPathToId = "+(t16-t15));
  }
}