Example usage for org.apache.commons.lang.time StopWatch StopWatch

List of usage examples for org.apache.commons.lang.time StopWatch StopWatch

Introduction

In this page you can find the example usage for org.apache.commons.lang.time StopWatch StopWatch.

Prototype

public StopWatch() 

Source Link

Document

Constructor.

Usage

From source file:net.craigstars.game.services.util.TurnGenerator.java

/**
 * <pre>//from   ww  w .  j a v  a2s  .  c o  m
 *         Generate a turn
 * 
 *         Stars! Order of Events 
 *         
 *         Scrapping fleets (w/possible tech gain) 
 *         Waypoint 0 unload tasks 
 *         Waypoint 0 Colonization/Ground Combat resolution (w/possible tech gain) 
 *         Waypoint 0 load tasks 
 *         Other Waypoint 0 tasks * 
 *         MT moves 
 *         In-space packets move and decay 
 *         PP packets (de)terraform 
 *         Packets cause damage 
 *         Wormhole entry points jiggle 
 *         Fleets move (run out of fuel, hit minefields (fields reduce as they are hit), stargate, wormhole travel) 
 *         Inner Strength colonists grow in fleets 
 *         Mass Packets still in space and Salvage decay 
 *         Wormhole exit points jiggle 
 *         Wormhole endpoints degrade/jump 
 *         SD Minefields detonate (possibly damaging again fleet that hit minefield during movement) 
 *         Mining 
 *         Production (incl. research, packet launch, fleet/starbase construction) 
 *         SS Spy bonus obtained 
 *         Population grows/dies 
 *         Packets that just launched and reach their destination cause damage 
 *         Random events (comet strikes, etc.) 
 *         Fleet battles (w/possible tech gain) 
 *         Meet MT 
 *         Bombing 
 *         Waypoint 1 unload tasks 
 *         Waypoint 1 Colonization/Ground Combat resolution (w/possible tech gain) 
 *         Waypoint 1 load tasks 
 *         Mine Laying 
 *         Fleet Transfer 
 *         CA Instaforming 
 *         Mine sweeping 
 *         Starbase and fleet repair 
 *         Remote Terraforming
 * </pre>
 */
public void generate() {
    // time this logic
    StopWatch timer = new StopWatch();
    timer.start();

    game.setYear(game.getYear() + 1);

    // initialize the players to starting turn state
    initPlayers();

    performWaypointTasks(0);
    moveMysteryTrader();
    movePackets();
    updateWormholeEntryPoints();
    moveFleets();
    growISFleets();
    decayPackets();
    updateWormholeExitPoints();
    detonateMinefields();
    mine();
    produce();
    ssSpy();
    grow();
    randomEvents();
    battle();
    mysteryTrader();
    bombing();
    performWaypointTasks(0);
    layMines();
    transferFleets();
    terraformCAPlanets();
    sweepMines();
    repairFleets();
    remoteTerraform();

    scan(game);

    // do turn processing
    processTurns(game);

    /*
     * for (Planet planet : game.getPlanets()) { dao.getPlanetDao().save(planet);
     * dao.getProductionQueueDao().save(planet.getQueue()); }
     * 
     * for (Fleet fleet : game.getFleets()) { dao.getFleetDao().save(fleet); }
     */

    game.setStatus(GameStatus.WaitingForSubmit);
    log.info("Generated new turn {}, {} ms", game.getYear(), timer.getTime());

}

From source file:com.liferay.portal.search.solr.internal.SolrIndexSearcher.java

public long searchCount(SearchContext searchContext, Query query) throws SearchException {

    StopWatch stopWatch = new StopWatch();

    stopWatch.start();//  w w w .j  a  v a  2 s  . c om

    try {
        return doSearchCount(searchContext, query);
    } catch (Exception e) {
        if (_log.isWarnEnabled()) {
            _log.warn(e, e);
        }

        if (!_swallowException) {
            throw new SearchException(e.getMessage(), e);
        }

        return 0;
    } finally {
        if (_log.isInfoEnabled()) {
            stopWatch.stop();

            _log.info("Searching " + query.toString() + " took " + stopWatch.getTime() + " ms");
        }
    }
}

From source file:com.liferay.portal.security.ldap.internal.exportimport.LDAPUserExporterImpl.java

@Override
public void exportUser(long userId, long userGroupId, UserOperation userOperation) throws Exception {

    User user = _userLocalService.getUser(userId);

    long companyId = user.getCompanyId();

    StopWatch stopWatch = new StopWatch();

    if (_log.isDebugEnabled()) {
        stopWatch.start();/*from  w  ww.  j  a va2 s .co  m*/

        _log.debug(StringBundler.concat("Exporting user ", String.valueOf(user), " in user group ",
                String.valueOf(userGroupId)));
    }

    if (!_ldapSettings.isExportEnabled(companyId) || !_ldapSettings.isExportGroupEnabled(companyId)) {

        return;
    }

    long ldapServerId = _portalLDAP.getLdapServerId(companyId, user.getScreenName(), user.getEmailAddress());

    LdapContext ldapContext = _portalLDAP.getContext(ldapServerId, companyId);

    if (ldapContext == null) {
        return;
    }

    UserGroup userGroup = _userGroupLocalService.getUserGroup(userGroupId);

    Properties groupMappings = _ldapSettings.getGroupMappings(ldapServerId, companyId);
    Properties userMappings = _ldapSettings.getUserMappings(ldapServerId, companyId);

    Binding binding = _portalLDAP.getGroup(ldapServerId, companyId, userGroup.getName());

    if (binding == null) {
        if (userOperation == UserOperation.ADD) {
            addGroup(ldapServerId, ldapContext, userGroup, user, groupMappings, userMappings);
        } else {
            if (_log.isWarnEnabled()) {
                _log.warn("Unable to get or add LDAP bindings for user group " + userGroup.getName());
            }
        }

        return;
    }

    try {
        Name name = new CompositeName();

        name.add(binding.getNameInNamespace());

        Modifications modifications = _portalToLDAPConverter.getLDAPGroupModifications(ldapServerId, userGroup,
                user, groupMappings, userMappings, userOperation);

        ModificationItem[] modificationItems = modifications.getItems();

        ldapContext.modifyAttributes(name, modificationItems);
    } catch (SchemaViolationException sve) {
        if (_log.isInfoEnabled()) {
            _log.info("Unable to update LDAP bindings for user group " + userGroup.getName(), sve);
        }

        String fullGroupDN = binding.getNameInNamespace();

        Attributes attributes = _portalLDAP.getGroupAttributes(ldapServerId, companyId, ldapContext,
                fullGroupDN, true);

        Attribute groupMembers = attributes.get(groupMappings.getProperty(GroupConverterKeys.USER));

        if ((groupMembers != null) && (groupMembers.size() == 1)) {
            ldapContext.unbind(fullGroupDN);
        }
    } finally {
        if (ldapContext != null) {
            ldapContext.close();
        }

        if (_log.isDebugEnabled()) {
            _log.debug(StringBundler.concat("Finished exporting user ", String.valueOf(user), " in user group ",
                    String.valueOf(userGroupId), " in ", String.valueOf(stopWatch.getTime()), "ms"));
        }
    }
}

From source file:com.couchbase.graph.CBGraphPerfTest.java

@Test
@RunIf(value = PerfEnabledChecker.class)
public void traverse50KEdges() {
    System.out.println("-- traverse50KEdges");

    int COUNT = 10000;
    String data = "123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790123456790";

    //Create a graph of neighbors and second neighbors
    System.out.println("Creating graph ...");

    Vertex root = graph.addVertex(UUID.randomUUID().toString());

    for (int i = 0; i < COUNT; i++) {

        Vertex v = graph.addVertex(UUID.randomUUID().toString());
        System.out.println("id = " + v.getId());
        v.setProperty("data", data);

        graph.addEdge(null, root, v, "neighbor of");

    }//  w w w  .ja  v  a  2  s  .c o m

    //Traverse the graph
    System.out.println("Traversing graph ...");

    StopWatch sw = new StopWatch();
    sw.start();

    Iterable<Vertex> vertices = root.getVertices(Direction.OUT);

    for (Vertex v : vertices) {

        System.out.println(v.getId());

    }

    sw.stop();
    System.out.println("Traversed tree in " + sw.getTime() + " ms");
}

From source file:com.couchbase.graph.CBVertex.java

/**
 * Iterate over an edge array by returning a list of edges
 * @param result// w  ww. j a v a  2s  . co m
 * @param edgeArr
 * @param graph
 * @return
 * @throws DocNotFoundException 
 */
private List<Edge> edgesFromJsonArr(List<Edge> result, JsonArray edgeArr, Graph graph)
        throws DocNotFoundException {
    StopWatch sw = new StopWatch();
    sw.start();

    if (edgeArr != null) {
        //Multi-get instead of multiple gets
        Iterator<Edge> it = Observable.from(edgeArr.toList()).flatMap(key -> client.async().get(key.toString()))
                .map(doc -> CBEdge.fromJson(doc.content(), graph)).toBlocking().getIterator();

        return CollectionHelper.copyIterator(it);
    }

    sw.stop();

    LOG.log(Level.FINEST, "Time to get edges: {0}", sw.getTime());

    return result;
}

From source file:com.mothsoft.alexis.dao.DocumentDaoImpl.java

public DataRange<Document> listDocumentsByOwner(final Long userId, final int first, final int count) {
    final StopWatch stopWatch = new StopWatch();
    stopWatch.start();// w  ww  . j  a  v a  2s  . c om

    final SortOrder sortOrder = SortOrder.DATE_DESC;
    final DataRange<DocumentScore> scoredRange = this.searchWithAllOptions(userId, false, null, null, sortOrder,
            null /* ignore start date */, null /* ignore end date */, first, count);

    final List<Document> range = new ArrayList<Document>(scoredRange.getRange().size());

    for (final DocumentScore scoredDoc : scoredRange.getRange()) {
        range.add(scoredDoc.getDocument());
    }

    final DataRange<Document> dataRange = new DataRange<Document>(range, scoredRange.getFirstRow(),
            scoredRange.getTotalRowsAvailable());

    stopWatch.stop();
    logger.debug(stopWatch.toString());

    return dataRange;
}

From source file:com.liferay.portal.search.elasticsearch.internal.ElasticsearchIndexSearcher.java

@Override
public Hits search(SearchContext searchContext, Query query) throws SearchException {

    StopWatch stopWatch = new StopWatch();

    stopWatch.start();/*from  w w w.j  a v a2s  .  c o m*/

    try {
        int start = searchContext.getStart();
        int end = searchContext.getEnd();

        if (start == QueryUtil.ALL_POS) {
            start = 0;
        } else if (start < 0) {
            throw new IllegalArgumentException("Invalid start " + start);
        }

        if (end == QueryUtil.ALL_POS) {
            end = GetterUtil.getInteger(props.get(PropsKeys.INDEX_SEARCH_LIMIT));
        } else if (end < 0) {
            throw new IllegalArgumentException("Invalid end " + end);
        }

        Hits hits = null;

        while (true) {
            hits = doSearchHits(searchContext, query, start, end);

            Document[] documents = hits.getDocs();

            if ((documents.length != 0) || (start == 0)) {
                break;
            }

            int[] startAndEnd = SearchPaginationUtil.calculateStartAndEnd(start, end, hits.getLength());

            start = startAndEnd[0];
            end = startAndEnd[1];
        }

        hits.setStart(stopWatch.getStartTime());

        return hits;
    } catch (Exception e) {
        if (_log.isWarnEnabled()) {
            _log.warn(e, e);
        }

        if (!_logExceptionsOnly) {
            throw new SearchException(e.getMessage(), e);
        }

        return new HitsImpl();
    } finally {
        if (_log.isInfoEnabled()) {
            stopWatch.stop();

            _log.info(StringBundler.concat("Searching ", query.toString(), " took ",
                    String.valueOf(stopWatch.getTime()), " ms"));
        }
    }
}

From source file:com.netflix.paas.ArchaeusPassConfigurationTest.java

void timeConfig(MyConfig config, String name, int count) {
    StopWatch sw = new StopWatch();
    sw.start();/*from   ww  w  .  j a v  a 2  s. c o m*/
    for (int i = 0; i < count; i++) {
        for (Method method : MyConfig.class.getMethods()) {
            try {
                Object value = method.invoke(config);
                //                    System.out.println(name + " " + method.getName() + " " + value);

            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    System.out.println(name + " took " + sw.getTime());
}

From source file:chibi.gemmaanalysis.GeneExpressionWriterCLI.java

@Override
protected Exception doWork(String[] args) {

    StopWatch timer = new StopWatch();
    timer.start();//  www  .  j ava  2s .  com

    String HEADER = "HEADER";

    processCommandLine(args);

    Collection<Gene> genes;
    try {
        genes = getQueryGenes();
    } catch (IOException e) {
        return e;
    }

    StringBuffer sb = new StringBuffer();
    for (Gene gene : genes) {
        sb.append(gene.toString());
        sb.append(", ");
    }
    log.info(genes.size() + " genes: " + sb.toString());

    sb = new StringBuffer();
    for (BioAssaySet bas : this.expressionExperiments) {
        sb.append(bas.toString());
        sb.append(", ");
    }
    log.info(this.expressionExperiments.size() + " experiments: " + sb.toString());

    Map<Object, StringBuffer> outBuffs = new HashMap<>();

    String fileName = outFilePrefix + ".txt";

    log.info("Output filename " + fileName);

    for (BioAssaySet bas : this.expressionExperiments) {
        ExpressionExperiment ee = (ExpressionExperiment) bas;
        Collection<ArrayDesign> ads = eeService.getArrayDesignsUsed(ee);
        Collection<CompositeSequence> css = new HashSet<CompositeSequence>();
        for (ArrayDesign ad : ads) {
            css.addAll(adService.getCompositeSequences(ad));
        }

        log.info("====================================");
        log.info("Experiment " + ee + "; Array Design " + ads + "; Composite sequences " + css.size());

        Map<Gene, Collection<CompositeSequence>> gene2css = getGene2CsMap(css);
        // ExpressionDataDoubleMatrix dataMatrix = expressionDataMatrixService.getFilteredMatrix( ee, filterConfig
        // );
        ExpressionDataDoubleMatrix dataMatrix = expressionDataMatrixService
                .getProcessedExpressionDataMatrix(ee);

        // store values inside a buffer
        if (!outBuffs.containsKey(HEADER)) {
            StringBuffer hb = new StringBuffer();
            hb.append("Gene\tProbe\tID");
            outBuffs.put(HEADER, hb);
        }
        for (BioMaterial bm : dataMatrix.getMatrix().getColNames()) {
            // bm.getFactorValues()
            // bm.getCharacteristics()
            // outBuffs.get( HEADER )
            // .append(
            // "\t" + bm.getName() + "."
            // + StringUtils.collectionToDelimitedString( bm.getFactorValues(), "," ) );
            outBuffs.get(HEADER)
                    .append("\t" + ee.getShortName() + "." + bm.getName() + "."
                            + StringUtils.collectionToDelimitedString(bm.getCharacteristics(), ",") + "."
                            + StringUtils.collectionToDelimitedString(bm.getFactorValues(), ","));
        }

        for (Gene gene : genes) {
            log.debug(" Getting component sequence for gene " + gene);
            Collection<CompositeSequence> c = gene2css.get(gene);

            if (c == null) {
                log.error("No composite sequences found for gene " + gene);
                continue;
            }

            for (CompositeSequence cs : c) {

                Double[] row = dataMatrix.getRow(cs);
                if (row == null) {
                    log.error("Cannot get data from data matrix for " + gene.getOfficialSymbol() + " ("
                            + cs.getName() + ")");
                    // continue;
                    row = new Double[dataMatrix.getMatrix().columns()];
                }

                if (!outBuffs.containsKey(cs)) {
                    StringBuffer gb = new StringBuffer();
                    gb.append(gene.getOfficialSymbol() + "\t" + cs.getName() + "\t" + cs.getId());
                    outBuffs.put(cs, gb);
                }

                StringBuffer buf = new StringBuffer();
                for (Double d : row) {
                    if (d == null)
                        buf.append("NA");
                    else
                        buf.append(d);
                    buf.append("\t");
                }
                buf.deleteCharAt(buf.length() - 1);
                outBuffs.get(cs).append("\t" + buf.toString());
            }
        }

    }

    // Output to file
    try (PrintWriter out = new PrintWriter(new FileWriter(fileName));) {
        out.println(outBuffs.get(HEADER));
        for (Object key : outBuffs.keySet()) {
            if (key.equals(HEADER)) {
                continue;
            }
            out.println(outBuffs.get(key));
        }
    } catch (IOException e) {
        return e;
    }

    log.info("Done. Wrote " + genes.size() + " genes and " + (outBuffs.keySet().size() - 1)
            + " composite sequences in " + this.expressionExperiments.size() + " experiments which took "
            + timer.getTime() + " ms. Output file " + fileName);

    return null;
}

From source file:eagle.service.generic.GenericEntityServiceResource.java

@POST
@Consumes({ MediaType.MULTIPART_FORM_DATA })
@Produces(MediaType.APPLICATION_JSON)/*from w  w  w . j  av  a  2 s.co m*/
public GenericServiceAPIResponseEntity create(@FormDataParam("file") InputStream fileInputStream,
        @FormDataParam("file") FormDataContentDisposition cdh, @QueryParam("serviceName") String serviceName) {
    GenericServiceAPIResponseEntity<String> response = new GenericServiceAPIResponseEntity<String>();
    Map<String, Object> meta = new HashMap<>();
    StopWatch stopWatch = new StopWatch();
    try {
        stopWatch.start();
        EntityDefinition entityDefinition = EntityDefinitionManager.getEntityByServiceName(serviceName);

        if (entityDefinition == null) {
            throw new IllegalArgumentException("entity definition of service " + serviceName + " not found");
        }

        List<? extends TaggedLogAPIEntity> entities = unmarshalEntitiesByServie(fileInputStream,
                entityDefinition);
        DataStorage dataStorage = DataStorageManager.getDataStorageByEagleConfig();
        CreateStatement createStatement = new CreateStatement(entities, entityDefinition);
        ModifyResult<String> result = createStatement.execute(dataStorage);
        if (result.isSuccess()) {
            List<String> keys = result.getIdentifiers();
            if (keys != null) {
                response.setObj(keys, String.class);
                response.setObj(keys, String.class);
                meta.put(TOTAL_RESULTS, keys.size());
            } else {
                meta.put(TOTAL_RESULTS, 0);
            }
            meta.put(ELAPSEDMS, stopWatch.getTime());
            response.setMeta(meta);
            response.setSuccess(true);
        }
    } catch (Exception e) {
        LOG.error(e.getMessage(), e);
        response.setException(e);
    } finally {
        stopWatch.stop();
    }
    return response;
}