private String name;
private Format format;
private long lastModified;
- private boolean remote;
/**
* Create a new {@link Card} from the given {@link File} and {@link Format}.
* if format is NULL
*/
public Card(File file, Format format) throws IOException {
- this(Parser.parse(file, format));
+ this(Parser.parseContact(file, format));
- if (file != null) {
- if (file.exists()) {
- lastModified = file.lastModified();
- }
+ if (file != null && file.exists()) {
+ lastModified = file.lastModified();
}
this.format = format;
* @throws InvalidParameterException
* if format is NULL
*/
- public Card(List<Contact> contacts) throws IOException {
+ public Card(List<Contact> contacts) {
super(contacts);
lastModified = -1;
if (this.file != null
&& file.getCanonicalPath().equals(this.file.getCanonicalPath())) {
+ lastModified = file.lastModified();
setPristine();
}
if (file == null)
return false;
- this.replaceListContent(Parser.parse(file, format));
+ this.replaceListContent(Parser.parseContact(file, format));
+ lastModified = file.lastModified();
setPristine();
+
return true;
}
* @return the {@link String}
*/
public String toString(Format format) {
- return Parser.toString(this, format);
+ StringBuilder builder = new StringBuilder();
+ for (String line : Parser.toStrings(this, format)) {
+ builder.append(line);
+ builder.append("\r\n");
+ }
+ return builder.toString();
}
/**
return lastModified;
}
- /**
- * Check if this {@link Card} is remote.
- *
- * @return TRUE if this {@link Card} is remote
- */
- public boolean isRemote() {
- return remote;
- }
-
- /**
- * Set the remote option on this {@link Card}.
- *
- * @param remote
- * TRUE if this {@link Card} is remote
- */
- public void setRemote(boolean remote) {
- this.remote = remote;
- }
-
@Override
public String toString() {
return toString(Format.VCard21);
@Override
public String getState() {
- return "" + name + format;
+ return ("" + name + format).replace(' ', '_');
}
}