Example usage for org.joda.time.format DateTimeFormat forPattern

List of usage examples for org.joda.time.format DateTimeFormat forPattern

Introduction

In this page you can find the example usage for org.joda.time.format DateTimeFormat forPattern.

Prototype

public static DateTimeFormatter forPattern(String pattern) 

Source Link

Document

Factory to create a formatter from a pattern string.

Usage

From source file:com.ehdev.chronos.lib.types.Punch.java

License:Open Source License

public String toCVS(Context context) {
    //id,date,name,task name, date in ms, job num, task num

    DateTimeFormatter fmt;/*from  w  w w . j a va2s .c o  m*/
    if (!DateFormat.is24HourFormat(context))
        fmt = DateTimeFormat.forPattern("E MMM d yyyy h:mm a");
    else
        fmt = DateTimeFormat.forPattern("E MMM d yyyy HH:mm");

    return String.format("%d,%s,%s,%s,%d,%d,%d\n", getID(), getTime().toString(fmt), getJob().getName(),
            getTask().getName(), getTime().getMillis(), getJob().getID(), getTask().getID());
}

From source file:com.einzig.ipst2.util.PreferencesHelper.java

License:Open Source License

/**
 * @return Date formatter for displaying a date on the UI
 *//*from w w  w .j a  v  a  2 s.  c o  m*/
public DateTimeFormatter getUIFormatter() {
    String formatString = preferences.getString(dateFormatKey(), nullKey());
    return DateTimeFormat.forPattern(formatString);
}

From source file:com.emo.ananas.configs.EmailConfig.java

License:Apache License

public EmailConfig(final Config config) {
    Preconditions.checkArgument(config.hasPath("to"), "report must have a report.to defined");
    Preconditions.checkArgument(config.getStringList("to").size() >= 1,
            "report must have at least one recipient as an array in report.to");
    Preconditions.checkArgument(config.hasPath("from"), "report must have a sender in report.from");
    Preconditions.checkArgument(config.hasPath("subject"),
            "report must have a subject, it can contain a date format as defined by JodaTime");

    final String rawSubject = config.getString("subject");

    final Pattern pattern = Pattern.compile("\\%d\\{([^\\}]+)\\}");
    final Matcher matcher = pattern.matcher(rawSubject);

    final DateTime dt = new DateTime();

    final StringBuffer sb = new StringBuffer();

    while (matcher.find()) {
        final String datePattern = matcher.group(1);

        final DateTimeFormatter fmt = DateTimeFormat.forPattern(datePattern);
        final String formattedDate = fmt.print(dt);

        matcher.appendReplacement(sb, formattedDate);
    }//from  w ww.  j  a v a 2s  .  co m
    matcher.appendTail(sb);

    this.to = Collections.unmodifiableList(config.getStringList("to"));
    this.from = config.getString("from");
    this.subject = sb.toString();
}

From source file:com.enitalk.configs.DateCache.java

public NavigableSet<DateTime> days(JsonNode tree, String tz, JsonNode teacherNode) {
    ConcurrentSkipListSet<DateTime> dates = new ConcurrentSkipListSet<>();

    Iterator<JsonNode> els = tree.elements();
    DateTimeZone dz = DateTimeZone.forID(tz);
    DateTimeFormatter hour = DateTimeFormat.forPattern("HH:mm").withZone(dz);

    DateTime today = DateTime.now().millisOfDay().setCopy(0);
    while (els.hasNext()) {

        JsonNode el = els.next();/*from w ww . jav a  2 s  . co m*/
        String day = el.path("day").asText();

        boolean plus = today.getDayOfWeek() > days.get(day);
        if (el.has("start") && el.has("end")) {
            DateTime start = hour.parseDateTime(el.path("start").asText()).dayOfMonth()
                    .setCopy(today.getDayOfMonth()).monthOfYear().setCopy(today.getMonthOfYear()).year()
                    .setCopy(today.getYear()).withDayOfWeek(days.get(day)).plusWeeks(plus ? 1 : 0);
            DateTime end = hour.parseDateTime(el.path("end").asText()).dayOfMonth()
                    .setCopy(today.getDayOfMonth()).monthOfYear().setCopy(today.getMonthOfYear()).year()
                    .setCopy(today.getYear()).withDayOfWeek(days.get(day)).plusWeeks(plus ? 1 : 0);

            Hours hours = Hours.hoursBetween(start, end);
            int hh = hours.getHours() + 1;

            while (hh-- > 0) {
                dates.add(start.plusHours(hh).toDateTime(DateTimeZone.UTC));
            }
        } else {
            List<String> datesAv = jackson.convertValue(el.path("times"), List.class);
            logger.info("Array of dates {} {}", datesAv, day);

            datesAv.forEach((String dd) -> {
                DateTime date = hour.parseDateTime(dd).dayOfMonth().setCopy(today.getDayOfMonth()).monthOfYear()
                        .setCopy(today.getMonthOfYear()).year().setCopy(today.getYear())
                        .withDayOfWeek(days.get(day)).plusWeeks(plus ? 1 : 0);
                dates.add(date.toDateTime(DateTimeZone.UTC));
            });

        }

    }

    final TreeSet<DateTime> addWeek = new TreeSet<>();
    for (int i = 1; i < 2; i++) {
        for (DateTime e : dates) {
            addWeek.add(e.plusWeeks(i));

        }
    }

    dates.addAll(addWeek);

    DateTime nowUtc = DateTime.now().toDateTime(DateTimeZone.UTC);
    nowUtc = nowUtc.plusHours(teacherNode.path("notice").asInt(2));

    NavigableSet<DateTime> ss = dates.tailSet(nowUtc, true);

    return ss;

}

From source file:com.enonic.cms.business.core.content.ContentParser.java

License:Open Source License

private Date parseDate(String dateString) {
    if (dateString == null || dateString.trim().length() == 0) {
        return null;
    }/*from w ww.ja  va  2s  .c o  m*/
    DateTimeFormatter fmt = DateTimeFormat.forPattern(DATE_PATTERN);
    DateTime date = fmt.parseDateTime(dateString);
    return date.toDate();
}

From source file:com.enonic.cms.core.content.imports.ImportValueFormater.java

License:Open Source License

public static Date getDate(final AbstractSourceValue value, final String format) throws ImportException {
    String strValue = getStringValue(value);
    if (StringUtils.isEmpty(strValue)) {
        return null;
    }/*from   w  ww  . j ava  2 s .c  o  m*/

    String pattern = "yyyy-MM-dd";
    try {
        if (StringUtils.isNotEmpty(format)) {
            pattern = format;
        }
        final DateTimeFormatter formatter = DateTimeFormat.forPattern(pattern);
        return formatter.parseDateTime(strValue).toDate();
    } catch (IllegalArgumentException ex) {
        try {
            return new SimpleDateFormat(pattern, Locale.ENGLISH).parse(strValue);
        } catch (ParseException e) {
            throw new ImportException(
                    "Failed to parse date from value '" + strValue + "', using pattern: " + pattern, ex);
        }
    }
}

From source file:com.enonic.cms.core.security.userstore.NonRepeatableSyncValueResolver.java

License:Open Source License

String resolve(String syncValue) {
    StringBuilder s = new StringBuilder();
    s.append(syncValue);/*from ww  w .j ava  2s  .c  o m*/
    s.append("_nonRepeatable_");

    DateTimeFormatter formatter = DateTimeFormat.forPattern("YYYY-MM-dd HH:mm:ss");
    s.append(timeService.getNowAsDateTime().toString(formatter));
    s.append("_");
    s.append(secureRandom.nextInt());
    return s.toString();
}

From source file:com.enonic.cms.core.user.field.UserFieldHelper.java

License:Open Source License

private DateTimeFormatter[] getSupportedDateFormats() {
    final DateTimeFormatter iso = DateTimeFormat.forPattern("yyyy-MM-dd");
    final DateTimeFormatter old = DateTimeFormat.forPattern("dd.MM.yyyy");
    final DateTimeFormatter standard = DATE_FORMAT;

    return new DateTimeFormatter[] { iso, old, standard };
}

From source file:com.enonic.cms.core.user.field.UserFieldHelper.java

License:Open Source License

public UserFieldHelper(String format) {
    this.dateFormat = format != null ? DateTimeFormat.forPattern(format) : DATE_FORMAT;
}

From source file:com.enonic.vertical.adminweb.handlers.ContentBaseHandlerServlet.java

License:Open Source License

public void handlerBrowse(HttpServletRequest request, HttpServletResponse response, HttpSession session,
        AdminService admin, ExtendedMap formItems, ExtendedMap parameters, User oldUser, Document verticalDoc)
        throws VerticalAdminException {

    UserEntity user = securityService.getUser(oldUser);
    String op = formItems.getString("op");
    String subop = formItems.getString("subop", "browse");

    String contenthandler = formItems.getString("contenthandler", "");

    int submittetCategoryKey = formItems.getInt("categorykey", -1);

    if (submittetCategoryKey == -1) {
        submittetCategoryKey = formItems.getInt("cat", -1);
    }//ww  w. ja  va2s.c  o m

    CategoryKey categoryKey = CategoryKey.parse(submittetCategoryKey);

    boolean categoryDisabled_which_means_user_do_not_have_read_access = formItems.getBoolean("disabled", false);

    String[] contentTypeStringArray = formItems.getStringArray("contenttypestring");
    int[] contentTypes = resolveContentTypes(contentTypeStringArray);
    StringBuffer contentTypesString = createContentTypesString(contentTypes);

    if (!"browse".equals(subop)) {
        String deploymentPath = DeploymentPathResolver.getAdminDeploymentPath(request);
        CookieUtil.setCookie(response, getPopupCookieName(contentTypesString.toString()),
                categoryKey != null ? categoryKey.toString() : "-1", COOKIE_TIMEOUT, deploymentPath);
    }

    ContentTypeKey contentTypeKey = null;
    boolean hasAdminReadOnCategory = true;
    boolean hasCategoryRead = false;
    boolean hasCategoryCreate = false;
    boolean hasCategoryPublish = false;
    boolean hasCategoryAdministrate = false;
    CategoryAccessResolver categoryAccessResolver = new CategoryAccessResolver(groupDao);

    if (categoryKey != null) {
        CategoryEntity category = categoryDao.findByKey(categoryKey);
        hasAdminReadOnCategory = categoryAccessResolver.hasAdminBrowseCategoryAccess(user, category);
        hasCategoryRead = categoryAccessResolver.hasReadCategoryAccess(user, category);
        hasCategoryCreate = categoryAccessResolver.hasCreateContentAccess(user, category);
        hasCategoryPublish = categoryAccessResolver.hasApproveContentAccess(user, category);
        hasCategoryAdministrate = categoryAccessResolver.hasAdministrateCategoryAccess(user, category);

        ContentTypeEntity contentType = category.getContentType();
        if (contentType != null) {
            contentTypeKey = contentType.getContentTypeKey();
        }
    }

    String sortBy = formItems.getString("sortby", "@timestamp");
    String sortByDirection = formItems.getString("sortby-direction", "DESC");

    StringBuffer orderBy = new StringBuffer();
    orderBy.append(sortBy);
    orderBy.append(" ");
    orderBy.append(sortByDirection);

    final String cookieName = "archiveBrowseItemsPerPage";
    int index = formItems.getInt("index", 0);
    int count = ListCountResolver.resolveCount(request, formItems, cookieName);
    CookieUtil.setCookie(response, cookieName, Integer.toString(count), COOKIE_TIMEOUT,
            DeploymentPathResolver.getAdminDeploymentPath(request));

    XMLDocument xmlContent = null;
    String searchType = formItems.getString("searchtype", null);

    // Get contents
    if (searchType != null) {

        if (searchType.equals("simple")) {
            xmlContent = new SearchUtility(userDao, groupDao, securityService, contentService).simpleSearch(
                    oldUser, formItems, categoryKey, contentTypes, orderBy.toString(), index, count);
            parameters.put("searchtext", formItems.getString("searchtext", ""));
            parameters.put("scope", formItems.getString("scope"));
        } else {
            String ownerGroupKey = formItems.getString("owner", "");
            if (!"".equals(ownerGroupKey)) {
                User ownerUser = getUserFromUserGroupKey(ownerGroupKey);

                parameters.put("owner.uid", ownerUser.getName());
                parameters.put("owner.fullName", ownerUser.getDisplayName());
                parameters.put("owner.qualifiedName", ownerUser.getQualifiedName());

                addUserKeyToFormItems(formItems, "owner.key", ownerUser);
            }

            String modifierGroupKey = formItems.getString("modifier", "");
            if (!"".equals(modifierGroupKey)) {
                User modifierUser = getUserFromUserGroupKey(modifierGroupKey);

                parameters.put("modifier.uid", modifierUser.getName());
                parameters.put("modifier.fullName", modifierUser.getDisplayName());
                parameters.put("modifier.qualifiedName", modifierUser.getQualifiedName());

                addUserKeyToFormItems(formItems, "modifier.key", modifierUser);
            }

            String assignee = formItems.getString("_assignee", "");
            if (!"".equals(assignee)) {
                User assigneeUser = getUserFromUserKey(assignee);
                if (assigneeUser == null) {
                    assigneeUser = getUserFromUserGroupKey(assignee);
                }

                parameters.put("assignment.assigneeUserKey", assignee);
                parameters.put("assignment.assigneeDisplayName", assigneeUser.getDisplayName());
                parameters.put("assignment.assigneeQualifiedName", assigneeUser.getQualifiedName().toString());
            }

            String assigner = formItems.getString("_assigner", "");
            if (!"".equals(assigner)) {
                User assignerUser = getUserFromUserKey(assigner);
                if (assignerUser == null) {
                    assignerUser = getUserFromUserGroupKey(assigner);
                }

                parameters.put("assignment.assignerUserKey", assigner);
                parameters.put("assignment.assignerDisplayName", assignerUser.getDisplayName());
                parameters.put("assignment.assignerQualifiedName", assignerUser.getQualifiedName().toString());
            }

            String assignmentDueDate = formItems.getString("date_assignmentDueDate", "");
            if (!"".equals(assignmentDueDate)) {
                DateTimeFormatter norwegianDateFormatter = DateTimeFormat.forPattern("dd.MM.yyyy");
                DateMidnight assignmentDueDateAsDateTime = norwegianDateFormatter
                        .parseDateTime(assignmentDueDate).toDateMidnight();

                DateTimeFormatter isoDateFormatter = DateTimeFormat.forPattern("yyyy-MM-dd");
                String assignmentDueDateAsStringIsoFormatted = isoDateFormatter
                        .print(assignmentDueDateAsDateTime);
                parameters.put("assignment.dueDate", assignmentDueDateAsStringIsoFormatted);
                parameters.put("assignment.dueDate.op", formItems.getString("_assignmentDueDate.op", ""));
            }

            xmlContent = new SearchUtility(userDao, groupDao, securityService, contentService)
                    .advancedSearch(oldUser, formItems, contentTypes, orderBy.toString(), index, count);
            parameters.put("asearchtext", formItems.getString("asearchtext", ""));
            parameters.put("ascope", formItems.getString("ascope"));
            parameters.put("subcategories", formItems.getString("subcategories"));
            parameters.put("state", formItems.getString("state", ""));
            parameters.put("owner", ownerGroupKey);

            parameters.put("modifier", modifierGroupKey);

            parameters.put("created.op", formItems.getString("created.op", ""));
            parameters.put("created", formItems.getString("datecreated", ""));
            parameters.put("modified.op", formItems.getString("modified.op", ""));
            parameters.put("modified", formItems.getString("datemodified", ""));
            parameters.put("acontentkey", formItems.getString("acontentkey", ""));
            parameters.put("filter", formItems.getString("filter", ""));
            parameters.put("selectedtabpage", formItems.getString("selectedtabpage", ""));
            parameters.put("duedate", assignmentDueDate);
        }
        parameters.put("searchtype", searchType);
    } else if (hasAdminReadOnCategory) {
        xmlContent = admin.getContent(oldUser, categoryKey, false, orderBy.toString(), index, count, 0, 0, 0);
    }

    if (xmlContent != null) {
        Document contentDoc = xmlContent.getAsDOMDocument();
        XMLTool.mergeDocuments(verticalDoc, contentDoc, true);

        // Find all content types and categories in this list
        Element[] contentElems = XMLTool.getElements(contentDoc.getDocumentElement(), "content");
        Set<ContentTypeKey> contentTypeKeys = new HashSet<ContentTypeKey>();
        Set<Integer> categoryKeys = new HashSet<Integer>();
        for (Element contentElem : contentElems) {
            contentTypeKeys.add(new ContentTypeKey(contentElem.getAttribute("contenttypekey")));
            Element categoryElem = XMLTool.getElement(contentElem, "categoryname");
            categoryKeys.add(Integer.parseInt(categoryElem.getAttribute("key")));
        }

        if (contentTypeKeys.size() == 0 && searchType == null && contentTypeKey != null) {
            // This is a normal listing of an empty category
            contentTypeKeys.add(contentTypeKey);
        }

        if (contentTypeKeys.size() > 0) {
            XMLDocument ctyDoc = admin.getContentTypes(ContentTypeKey.convertToIntArray(contentTypeKeys), true);
            XMLTool.mergeDocuments(verticalDoc, ctyDoc.getAsDOMDocument(), true);
        }

        // Get content types for this site
        XMLDocument siteContentTypesDoc = admin.getContentTypes(false);
        final Document siteContentTypesDocument = siteContentTypesDoc.getAsDOMDocument();
        XMLTool.renameElement(siteContentTypesDocument.getDocumentElement(), "sitecontenttypes");
        XMLTool.mergeDocuments(verticalDoc, siteContentTypesDocument, true);

        // Get all categories
        if (categoryKeys.size() > 0) {

            Integer[] keyArray = new Integer[categoryKeys.size()];
            keyArray = categoryKeys.toArray(keyArray);

            CategoryCriteria categoryCriteria = new CategoryCriteria();
            categoryCriteria.addCategoryKeys(Arrays.asList(keyArray));
            Document categoriesDoc = admin.getMenu(oldUser, categoryCriteria).getAsDOMDocument();
            XMLTool.mergeDocuments(verticalDoc, categoriesDoc, false);
        }
    }

    Document headerDoc = admin.getCategoryPathXML(categoryKey, contentTypes).getAsDOMDocument();
    XMLTool.mergeDocuments(verticalDoc, headerDoc, true);

    // Default browse config
    Document defaultBrowseConfig = AdminStore.getXml(session, "defaultbrowseconfig.xml").getAsDOMDocument();
    XMLTool.mergeDocuments(verticalDoc, defaultBrowseConfig, true);

    // Feedback
    if (formItems.containsKey("feedback")) {
        addFeedback(verticalDoc, formItems.getInt("feedback"));
    }

    // Category header
    if (categoryKey != null) {
        // Category

        // Small hack: we put the current category on /data/category, all categories
        // used are also present in /data/categories/category, but without contentcount and accessrights
        Document categoryDoc = admin.getCategory(oldUser, categoryKey.toInt()).getAsDOMDocument();
        XMLTool.mergeDocuments(verticalDoc, categoryDoc, false);

        int superCategoryKey = admin.getSuperCategoryKey(categoryKey.toInt());
        if (superCategoryKey != -1) {
            CategoryAccessRight supercar = admin.getCategoryAccessRight(oldUser, superCategoryKey);
            parameters.put("parentcategoryadministrate", supercar.getAdministrate());
        }

        // Trenger indexparametre for  vite hvilke felt det kan sorteres p.. list.xsl
        Document indexingDoc = XMLTool.domparse(admin.getIndexingParametersXML(contentTypeKey));
        XMLTool.mergeDocuments(verticalDoc, indexingDoc, true);

        parameters.put("cat", categoryKey.toString());
        parameters.put("contenttypekey",
                Integer.toString(contentTypeKey != null ? contentTypeKey.toInt() : -1));
        parameters.put("selectedunitkey", Integer.toString(admin.getUnitKey(categoryKey.toInt())));
    } else {
        parameters.putInt("cat", -1);
        parameters.putInt("selectedunitkey", -1);
    }

    if (categoryDisabled_which_means_user_do_not_have_read_access) {
        parameters.put("searchonly", "true");
    }
    parameters.put("index", index);
    parameters.put("count", count);
    parameters.put("op", op);
    parameters.put("subop", subop);
    parameters.put("hasAdminBrowse", hasAdminReadOnCategory);
    parameters.put("hasCategoryRead", hasCategoryRead);
    parameters.put("hasCategoryCreate", hasCategoryCreate);
    parameters.put("hasCategoryPublish", hasCategoryPublish);
    parameters.put("hasCategoryAdministrate", hasCategoryAdministrate);

    parameters.put("fieldname", formItems.getString("fieldname", ""));
    parameters.put("fieldrow", formItems.getString("fieldrow", ""));
    parameters.put("contenttypestring", contentTypesString.toString());
    parameters.put("sortby", sortBy);
    parameters.put("sortby-direction", sortByDirection);

    parameters.put("contenthandler", contenthandler);
    parameters.put("minoccurrence", formItems.getString("minoccurrence", ""));
    parameters.put("maxoccurrence", formItems.getString("maxoccurrence", ""));

    if (formItems.containsKey("reload")) {
        parameters.put("reload", formItems.getString("reload"));
    }

    addPageTemplatesOfUserSitesToDocument(admin, user, PageTemplateType.CONTENT, verticalDoc);

    transformXML(request, response, verticalDoc, "content_list.xsl", parameters);
}