@Override public DomEntryWrapper removeEntry(DomEntryWrapper e12) { element.removeChild(e12.element); database.setDirty(true); return e12; }
@Override public DomGroupWrapper removeGroup(DomGroupWrapper g1) { element.removeChild(g1.element); database.setDirty(true); return g1; }
@Override public void setName(String name) { setElementContent(NAME_ELEMENT_NAME, element, name); database.setDirty(true); }
@Override public boolean removeBinaryProperty(String name) { boolean wasRemoved = DomHelper.removeElement(String.format(DomHelper.BINARY_PROPERTY_ELEMENT_FORMAT, name), element); if (wasRemoved) database.setDirty(true); return wasRemoved; }
private void touch() { touchElement(LAST_MODIFICATION_TIME_ELEMENT_NAME, this.element); this.database.setDirty(true); } }
@Override public DomEntryWrapper addEntry(DomEntryWrapper entry) { if (entry.getParent() != null) { entry.element.getParentNode().removeChild(element); } element.appendChild(entry.element); database.setDirty(true); return entry; }
@Override public boolean removeProperty(String name) throws IllegalArgumentException { if (STANDARD_PROPERTY_NAMES.contains(name)) throw new IllegalArgumentException("may not remove property: " + name); boolean wasRemoved = DomHelper.removeElement(String.format(DomHelper.PROPERTY_ELEMENT_FORMAT, name), element); if (wasRemoved) database.setDirty(true); return wasRemoved; }
public void save(StreamFormat streamFormat, Credentials credentials, OutputStream outputStream) throws IOException { streamFormat.save(domDatabase, credentials, outputStream); setDirty(false); }
@Override public void setIcon(DomIconWrapper icon) { setElementContent(ICON_ELEMENT_NAME, element, String.valueOf(icon.getIndex())); database.setDirty(true); }
@Override public void setIcon(DomIconWrapper icon) { DomHelper.getElement(DomHelper.ICON_ELEMENT_NAME, element, true).setTextContent(String.valueOf(icon.getIndex())); DomHelper.touchElement(DomHelper.LAST_MODIFICATION_TIME_ELEMENT_NAME, element); database.setDirty(true); }
@Override public void save(Credentials credentials, OutputStream outputStream) throws IOException { new KdbxStreamFormat().save(domDatabase, credentials, outputStream); setDirty(false); }
public void setName(String name) { DomHelper.setElementContent("DatabaseName", dbMeta, name); DomHelper.touchElement("DatabaseNameChanged", dbMeta); setDirty(true); }
@Override public void setDescription(String description) { DomHelper.setElementContent("DatabaseDescription", dbMeta, description); DomHelper.touchElement("DatabaseDescriptionChanged", dbMeta); setDirty(true); }
@Override public void setBinaryProperty(String name, byte[] value) { Element property = DomHelper.getElement(String.format(DomHelper.BINARY_PROPERTY_ELEMENT_FORMAT, name), element, false); if (property == null) { property = DomHelper.newElement("Binary", element); DomHelper.setElementContent("Key", property, name); } DomHelper.setBinaryElementContent(DomHelper.VALUE_ELEMENT_NAME, property, value); DomHelper.touchElement(DomHelper.LAST_MODIFICATION_TIME_ELEMENT_NAME, element); database.setDirty(true); }
@Override public void setProperty(String name, String value) { Element property = DomHelper.getElement(String.format(DomHelper.PROPERTY_ELEMENT_FORMAT, name), element, false); if (property == null) { property = DomHelper.newElement("String", element); DomHelper.setElementContent("Key", property, name); } DomHelper.setElementContent(DomHelper.VALUE_ELEMENT_NAME, property, value); DomHelper.touchElement(DomHelper.LAST_MODIFICATION_TIME_ELEMENT_NAME, element); database.setDirty(true); }