List of usage examples for org.apache.commons.lang3.time StopWatch toSplitString
public String toSplitString()
Gets a summary of the split time that the stopwatch recorded as a string.
From source file:broadwick.stochastic.StochasticSimulator.java
/** * Start the simulation with the given {@link SimulationController}. *//*from w w w. j ava 2s . c o m*/ public final void run() { try { // If we haven't set a controller for the process then set the default one with a max time of 5 // (unknonw units). if (controller == null) { controller = new DefaultController(5); } init(); // tell our observers that the simulation has started for (Observer observer : observers) { observer.started(); } final StopWatch sw = new StopWatch(); sw.start(); while (controller.goOn(this)) { // The performStep() method is implemented by the specifc stochastic algorithm (e.g. Gillespie's) performStep(); //amountManager.doHouseKeeping(); // tell our observers that the step has been completed. for (Observer observer : observers) { observer.step(); } sw.split(); log.trace("Performed step in {}", sw.toSplitString()); } // tell our observers that the simulation has finished. for (Observer observer : observers) { observer.finished(); } } catch (Exception e) { log.error("Error running stochastic simulation. {}", Throwables.getStackTraceAsString(e)); throw e; } }
From source file:com.github.naoghuman.testdata.abclist.service.TopicService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {//from www . j a v a 2 s . c o m updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Topic topic = ModelProvider.getDefault().getTopic(id++, TestdataGenerator.getDefault().getUniqueTitles(index)); topic.setDescription(TestdataGenerator.getDefault().getDescription()); topic.setGenerationTime(TopicService.this.createGenerationTime()); crudService.create(topic); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Topics."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.TermService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {// www . ja va 2s . c o m updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Term term = ModelProvider.getDefault() .getTerm(TestdataGenerator.getDefault().getUniqueTitles(index)); term.setId(id++); term.setDescription(TestdataGenerator.getDefault().getDescription()); term.setGenerationTime(TermService.this.createGenerationTime()); crudService.create(term); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Terms."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.LinkService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/*from w w w .j a v a 2 s . c o m*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Link link = ModelProvider.getDefault().getLink(); link.setAlias("Google " + id); // NOI18N link.setDescription(TestdataGenerator.getDefault().getDescription()); link.setFavorite(TestdataGenerator.RANDOM.nextDouble() < 0.01d); link.setGenerationTime(LinkService.this.createGenerationTime()); link.setId(id++); link.setImage("image-name"); // NOI18N // TODO add real image name link.setMarkAsChanged(false); link.setUrl("https:////www.google.com"); // NOI18N crudService.create(link); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Links."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.ExerciseTermService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {// ww w .j a v a2s . co m updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final ObservableList<Topic> topics = SqlProvider.getDefault().findAllTopics(); final ObservableList<Term> terms = SqlProvider.getDefault().findAllTerms(); final int sizeTerms = terms.size(); final AtomicInteger index = new AtomicInteger(0); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); final AtomicLong id = new AtomicLong( -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName)); topics.stream().forEach(topic -> { final ObservableList<Exercise> exercises = SqlProvider.getDefault() .findAllExercisesWithTopicId(topic.getId()); exercises.stream().filter(exercise -> exercise.isReady()).forEach(exercise -> { final int maxExerciseTerms = TestdataGenerator.RANDOM.nextInt(70) + 10; for (int i = 0; i < maxExerciseTerms; i++) { final Term term = terms.get(TestdataGenerator.RANDOM.nextInt(sizeTerms)); final ExerciseTerm exerciseTerm = ModelProvider.getDefault().getExerciseTerm(); exerciseTerm.setExerciseId(exercise.getId()); exerciseTerm.setId(id.getAndIncrement()); exerciseTerm.setTermId(term.getId()); crudService.create(exerciseTerm); } }); updateProgress(index.getAndIncrement(), saveMaxEntities); }); LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " ExerciseTerms."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.ExerciseService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/*from w ww . ja v a 2 s.co m*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final ObservableList<Topic> topics = SqlProvider.getDefault().findAllTopics(); final int removeMaxTopics = (int) (Double.parseDouble(String.valueOf(topics.size())) * 0.001d); for (int counter = removeMaxTopics; counter > 0; counter--) { topics.remove(TestdataGenerator.RANDOM.nextInt(topics.size())); } final int sizeTopics = topics.size(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); final ETime[] times = ETime.values(); final int sizeTimes = times.length; long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Exercise exercise = ModelProvider.getDefault().getExercise(); exercise.setChoosenTime((times[TestdataGenerator.RANDOM.nextInt(sizeTimes)]).toString()); exercise.setConsolidated(false); // TODO later ? exercise.setFinishedTime(ExerciseService.this.createGenerationTime()); exercise.setGenerationTime(ExerciseService.this.createGenerationTime()); if (exercise.getGenerationTime() > exercise.getFinishedTime()) { final long generationTime = exercise.getGenerationTime(); final long finishedTime = exercise.getFinishedTime(); exercise.setGenerationTime(finishedTime); exercise.setFinishedTime(generationTime); } exercise.setId(id++); exercise.setReady(TestdataGenerator.RANDOM.nextDouble() > 0.001d); // TODO if ready then add terms final long topicId = topics.get(TestdataGenerator.RANDOM.nextInt(sizeTopics)).getId(); exercise.setTopicId(topicId); crudService.create(exercise); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Exercises."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.LinkMappingService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/* www . j ava 2 s .c om*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); /* 1) over all links 2) if random > 0.005d then do 3) otherwise create a link without parent 4) get 1-10 terms, create LinkMapping foreach of them - means a link is mapped to 1-10 terms 5) get 0-10 topics, create LinkMapping foreach of them - means a link is mapped to 0-10 topics */ final ObservableList<Link> links = SqlProvider.getDefault().findAllLinks(); final ObservableList<Term> terms = SqlProvider.getDefault().findAllTerms(); final int sizeTerms = terms.size(); final ObservableList<Topic> topics = SqlProvider.getDefault().findAllTopics(); final int sizeTopics = topics.size(); final AtomicInteger index = new AtomicInteger(0); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); final AtomicLong id = new AtomicLong( -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName)); links.stream() // 1 .forEach(link -> { // 2) Should the [Link] have a parent final double random = TestdataGenerator.RANDOM.nextDouble(); if (random > 0.005d) { // 4) Create [Link]s with parent [Term] final int maxTerms = TestdataGenerator.RANDOM.nextInt(10) + 1; for (int i = 0; i < maxTerms; i++) { final LinkMapping lm = ModelProvider.getDefault().getLinkMapping(); lm.setId(id.getAndIncrement()); final Term term = terms.get(TestdataGenerator.RANDOM.nextInt(sizeTerms)); lm.setParentId(term.getId()); lm.setParentType(LinkMappingType.TERM); lm.setChildId(link.getId()); lm.setChildType(LinkMappingType.LINK); crudService.create(lm); } // 5) Create [Link]s with parent [Topic] final int maxTopics = TestdataGenerator.RANDOM.nextInt(11); for (int i = 0; i < maxTopics; i++) { final LinkMapping lm = ModelProvider.getDefault().getLinkMapping(); lm.setId(id.getAndIncrement()); final Topic topic = topics.get(TestdataGenerator.RANDOM.nextInt(sizeTopics)); lm.setParentId(topic.getId()); lm.setParentType(LinkMappingType.TOPIC); lm.setChildId(link.getId()); lm.setChildType(LinkMappingType.LINK); crudService.create(lm); } } else { // 3) Some [Link]s havn't a parent final LinkMapping lm = ModelProvider.getDefault().getLinkMapping(); lm.setId(id.getAndIncrement()); lm.setParentId(IDefaultConfiguration.DEFAULT_ID); lm.setParentType(LinkMappingType.NOT_DEFINED); lm.setChildId(link.getId()); lm.setChildType(LinkMappingType.LINK); crudService.create(lm); } updateProgress(index.getAndIncrement(), saveMaxEntities); }); LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " LinkMappings."); // NOI18N stopWatch.stop(); return null; } }; }