Example usage for org.joda.time Period Period

List of usage examples for org.joda.time Period Period

Introduction

In this page you can find the example usage for org.joda.time Period Period.

Prototype

private Period(int[] values, PeriodType type) 

Source Link

Document

Constructor used when we trust ourselves.

Usage

From source file:com.alta189.cyborg.commandkit.twitter.TwitterCommands.java

License:Open Source License

@Command(name = "twitter", desc = "displays the last tweet of a twitter user", aliases = { "twit" })
@Usage(".twitter <user>")
public CommandResult twitter(CommandSource source, CommandContext context) {
    if (source.getSource() == CommandSource.Source.USER
            && (context.getPrefix() == null || !context.getPrefix().equals("."))) {
        return null;
    }/*from  ww  w.j  a  v  a2 s  .  c o m*/
    if (context.getArgs() == null || context.getArgs().length < 1) {
        return get(ReturnType.NOTICE, "Correct usage is .twitter <user>", source, context);
    }

    try {
        List<Status> statusList = twitter.getUserTimeline(context.getArgs()[0]);
        if (statusList == null || statusList.size() < 1) {
            return get(ReturnType.MESSAGE, "User has no tweets!", source, context);
        }
        Status status = statusList.get(0);
        status.getUser();
        StringBuilder builder = new StringBuilder();
        builder.append(status.getUser().getScreenName()).append(Colors.BLUE).append(": ").append(Colors.NORMAL)
                .append(status.getText()).append(" (");

        Period period = new Period(new DateTime(status.getCreatedAt()), new DateTime());
        if (period.getWeeks() > 2 || period.getMonths() > 1 || period.getYears() > 1) {
            builder.append(longTimeFormatter.print(period));
        } else {
            builder.append(timeFormatter.print(period));
        }
        builder.append(" ago)");
        return get(ReturnType.MESSAGE, builder.toString().replace(lineBreak, " "), source, context);
    } catch (TwitterException e) {
        if (e.getStatusCode() == 404) {
            return get(ReturnType.MESSAGE, "User not found!", source, context);
        } else if (e.getStatusCode() == 401) {
            return get(ReturnType.MESSAGE, "Access denied by Twitter!", source, context);
        } else {
            e.printStackTrace();
            return get(ReturnType.MESSAGE, "There was an internal error!", source, context);
        }
    }
}

From source file:com.amazonaws.services.kinesis.log4j.FilePublisher.java

License:Open Source License

public static void main(String[] args) throws IOException {
    if (args.length != 1) {
        System.err.println("Usage: java " + FilePublisher.class.getName() + " <file_path>");
        System.err.println();/*from www.  j  a  v  a 2s .  co  m*/
        System.err.println(
                "<file_path>\t-\tabsolute path for the input file, this file will be read line by line and ");
        System.err.println("\t\t\tpublished to Kinesis");
        System.exit(1);
    }
    String fileAbsolutePath = args[0];
    File logFile = new File(fileAbsolutePath);
    if (!logFile.exists() || !logFile.canRead()) {
        System.err.println("File " + args[0] + " doesn't exist or is not readable.");
        System.exit(2);
    }

    Logger kinesisLogger = Logger.getLogger("KinesisLogger");
    int i = 0;
    DateTime startTime = DateTime.now();
    BufferedReader reader = new BufferedReader(new FileReader(logFile));
    LOGGER.info("Started reading: " + fileAbsolutePath);
    String line = null;
    while ((line = reader.readLine()) != null) {
        kinesisLogger.info(line);
        i++;
        if (i % 100 == 0 && LOGGER.isDebugEnabled()) {
            LOGGER.debug("Total " + i + " records written to logger");
        }
    }
    reader.close();
    long bufferedRecordsCount = getBufferedRecordsCountFromKinesisAppenders();
    while (bufferedRecordsCount > 0) {
        LOGGER.info("Publisher threads within log4j appender are still working on sending "
                + bufferedRecordsCount + " buffered records to Kinesis");
        try {
            Thread.sleep(SLEEP_INTERVAL);
        } catch (InterruptedException e) {
            // do nothing
        }
        bufferedRecordsCount = getBufferedRecordsCountFromKinesisAppenders();
    }
    LOGGER.info("Published " + i + " records from " + fileAbsolutePath + " to the logger, took "
            + PeriodFormat.getDefault().print(new Period(startTime, DateTime.now())));
}

From source file:com.amazonaws.services.kinesis.log4j.helpers.AsyncBatchPutHandler.java

License:Open Source License

/**
 * This method is invoked when a log record is successfully sent to Kinesis.
 * Though this is not too useful for production use cases, it provides a good
 * debugging tool while tweaking parameters for the appender.
 *//*w w w .  jav  a2 s . c o  m*/
@Override
public void onSuccess(PutRecordsRequest request, PutRecordsResult result) {
    int currentSuccessfulCount = amazonKinesisPutRecordsHelper
            .getSuccessCountAndaddFailedRecordsBackToQueue(request, result);
    successfulRequestCount = successfulRequestCount + currentSuccessfulCount;

    if ((logger.isInfoEnabled() && (successfulRequestCount + failedRequestCount)
            % amazonKinesisPutRecordsHelper.getBatchSize() == 0) || logger.isDebugEnabled()) {
        logger.info("Appender (" + appenderName + ") made " + successfulRequestCount
                + " successful put requests out of total " + (successfulRequestCount + failedRequestCount)
                + " in " + PeriodFormat.getDefault().print(new Period(startTime, DateTime.now()))
                + " since start");
    }
}

From source file:com.amazonaws.services.kinesis.log4j.helpers.AsyncPutCallStatsReporter.java

License:Open Source License

/**
 * This method is invoked when a log record is successfully sent to Kinesis.
 * Though this is not too useful for production use cases, it provides a good
 * debugging tool while tweaking parameters for the appender.
 *//*  w w w  .  j  ava2  s  . c  o  m*/
@Override
public void onSuccess(PutRecordRequest request, PutRecordResult result) {
    successfulRequestCount++;
    if (logger.isDebugEnabled() && (successfulRequestCount + failedRequestCount) % 3000 == 0) {
        logger.debug("Appender (" + appenderName + ") made " + successfulRequestCount
                + " successful put requests out of total " + (successfulRequestCount + failedRequestCount)
                + " in " + PeriodFormat.getDefault().print(new Period(startTime, DateTime.now()))
                + " since start");
    }
}

From source file:com.blackducksoftware.integration.jira.task.JiraTaskTimed.java

License:Apache License

@Override
public String call() throws Exception {
    logger.info("Running the Hub JIRA periodic timed task.");

    final JiraContext jiraContext = initJiraContext(configDetails.getJiraAdminUserName(),
            configDetails.getJiraIssueCreatorUserName());
    if (jiraContext == null) {
        logger.error(/*  ww w  . j av a2  s.c  o  m*/
                "No (valid) user in configuration data; The plugin has likely not yet been configured; The task cannot run (yet)");
        return "error";
    }
    final DateTime beforeSetup = new DateTime();
    final TicketInfoFromSetup ticketInfoFromSetup = new TicketInfoFromSetup();
    try {
        jiraSetup(jiraServices, jiraSettingsService, configDetails.getProjectMappingJson(), ticketInfoFromSetup,
                jiraContext);
    } catch (final Exception e) {
        logger.error("Error during JIRA setup: " + e.getMessage() + "; The task cannot run", e);
        return "error";
    }
    final DateTime afterSetup = new DateTime();
    final Period diff = new Period(beforeSetup, afterSetup);
    logger.info("Hub JIRA setup took " + diff.getMinutes() + "m," + diff.getSeconds() + "s," + diff.getMillis()
            + "ms.");
    final HubJiraTask processor = new HubJiraTask(configDetails, jiraContext, jiraSettingsService,
            ticketInfoFromSetup);
    final String runDateString = processor.execute();
    if (runDateString != null) {
        settings.put(HubJiraConfigKeys.HUB_CONFIG_LAST_RUN_DATE, runDateString);
    }
    logger.info("hub-jira periodic timed task has completed");
    return "success";
}

From source file:com.callidusrobotics.droptables.view.ResultListView.java

License:Open Source License

public String prettyPrintTTL(ResultEntry result, Date refDate) {
    if (result.getTtl() == null) {
        return "These results will not be scheduled for deletion from the database";
    }// w  w  w .  j  a va 2 s .c  o  m

    Period period = new Period(refDate.getTime(), result.getTtl().getTime() + ResultEntry.TTL_SECONDS * 1000);

    return "These results will automatically be deleted in " + PERIOD_FORMTTER.print(period);
}

From source file:com.enonic.cms.business.portal.livetrace.Duration.java

License:Open Source License

void setStopTime(DateTime stopTime) {
    Preconditions.checkNotNull(stopTime);
    this.stopTime = stopTime;
    this.executionTimeInMilliseconds = stopTime.getMillis() - startTime.getMillis();
    this.dateTimeDuration = new Period(startTime, stopTime);
    this.executionTimeAsHRFormat = hoursMinutesMillis.print(dateTimeDuration);
}

From source file:com.enonic.cms.business.portal.livetrace.Duration.java

License:Open Source License

public String getExecutionTimeAsHRFormat() {
    if (hasEnded()) {
        return executionTimeAsHRFormat;
    } else if (startTime != null) {
        return hoursMinutesMillis.print(new Period(startTime, new DateTime()));
    } else {//from  w  w  w  .ja va  2s.c  o m
        return "0";
    }
}

From source file:com.enonic.cms.business.timezone.TimeZoneXmlCreator.java

License:Open Source License

private Element doCreateTimeZoneElement(DateTimeZone timeZone) {

    Element timeZoneEl = new Element("time-zone");
    timeZoneEl.setAttribute("ID", timeZone.getID());
    timeZoneEl.addContent(new Element("display-name").setText(timeZone.getID()));

    DateTime localTime = now.plus(timeZone.getOffsetFromLocal(now.getMillis()));
    Period offsetPeriod = new Period(now, localTime);
    //timeZoneEl.addContent( new Element( "hours-from-utc" ).setText( String.valueOf( offsetPeriod.getHours() ) ) );
    timeZoneEl.addContent(/*from w  w  w . j a va  2  s  .com*/
            new Element("hours-from-utc-as-human-readable").setText(getHoursAsHumanReadable(offsetPeriod)));

    return timeZoneEl;
}

From source file:com.enonic.cms.core.portal.livetrace.Duration.java

License:Open Source License

@Override
public String getAsHRFormat() {
    if (hasEnded()) {
        return super.getAsHRFormat();
    } else if (startTime != null) {
        return HOURS_MINUTES_MILLIS.print(new Period(startTime, new DateTime()));
    } else {/*from   w  w w  .java2 s.  c  o  m*/
        return "0";
    }
}