/** * {@inheritDoc} */ public BDay createProperty(final List<Parameter> params, final String value) throws ParseException { return new BDay(params, unescape(value)); }
/** * {@inheritDoc} */ @Override public void validate() throws ValidationException { // ; Only value parameter allowed assertOneOrLess(Parameter.Id.VALUE); /* if (getParameters().size() > 1) { throw new ValidationException("Illegal parameter count"); } for (Parameter param : getParameters()) { if (!Value.TEXT.equals(param)) { throw new ValidationException("Illegal parameter [" + param.getId() + "]"); } } */ }
/** * @param text non-structured date of birth */ public BDay(String text) { super(Id.BDAY); this.text = text; getParameters().add(Value.TEXT); }
/** * {@inheritDoc} */ @Override public void validate() throws ValidationException { // ; Only value parameter allowed assertOneOrLess(Parameter.Id.VALUE); if (getParameters().size() > 1) { throw new ValidationException("Illegal parameter count"); } for (Parameter param : getParameters()) { if (!Value.TEXT.equals(param)) { throw new ValidationException("Illegal parameter [" + param.getId() + "]"); } } }
/** * {@inheritDoc} */ @Override public String getValue() { if (Value.TEXT.equals(getParameter(Parameter.Id.VALUE))) { return text; } return Strings.valueOf(date); }
/** * {@inheritDoc} */ @Override public String getValue() { if (Value.TEXT.equals(getParameter(Parameter.Id.VALUE))) { return text; } return Strings.valueOf(date); }
if (Value.TEXT.equals(getParameter(Parameter.Id.VALUE))) { this.text = value; return;
/** * @param text non-structured date of birth */ public BDay(String text) { super(Id.BDAY); this.text = text; getParameters().add(Value.TEXT); }
/** * {@inheritDoc} */ public BDay createProperty(final List<Parameter> params, final String value) throws ParseException { return new BDay(params, unescape(value)); }
/** * Factory constructor. * * @param params property parameters * @param value string representation of a property value * @throws ParseException if the property value is an invalid date */ public BDay(List<Parameter> params, String value) throws ParseException { super(Id.BDAY, params); if (Value.TEXT.equals(getParameter(Parameter.Id.VALUE))) { this.text = value; } else { // try default patterns first, then fall back on vCard-specific patterns try { this.date = new Date(value); } catch (ParseException e) { try { this.date = new DateTime(value); } catch (ParseException e2) { try { this.date = new Date(value, "yyyy'-'MM'-'dd"); } catch (ParseException e3) { this.date = new DateTime(value, "yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'", true); } } } } }