entry.setUsername(r.Login); entry.setUrl(r.Url); entry.setProperty("SubmitUrl", r.SubmitUrl);
@Test public void checkAddChangeRemoveProperty() { // only applies to databases that support arbitrary properties E entry = database.newEntry(); assertEquals(Entry.STANDARD_PROPERTY_NAMES.size(), entry.getPropertyNames().size()); try { entry.setProperty("test", "test1"); } catch (UnsupportedOperationException e) { if (!database.supportsNonStandardPropertyNames()) { return; } fail("Database must report that it doesn't support non standrad properties"); } assertEquals("test1", entry.getProperty("test")); entry.setProperty("test", "test2"); assertEquals("test2", entry.getProperty("test")); assertTrue(entry.removeProperty("test")); assertFalse(entry.removeProperty("test")); assertFalse(entry.removeProperty("test-test")); assertEquals(Entry.STANDARD_PROPERTY_NAMES.size(), entry.getPropertyNames().size()); try { entry.removeProperty(Entry.STANDARD_PROPERTY_NAME_USER_NAME); fail("Should not be able to remove standard property"); } catch (IllegalArgumentException ignore) { // ignore as expected } }
e1.setProperty(Entry.STANDARD_PROPERTY_NAME_TITLE, "A title"); assertEquals("A title", e1.getTitle()); e1.setProperty(Entry.STANDARD_PROPERTY_NAME_USER_NAME, "username"); assertEquals("username", e1.getUsername()); e1.setProperty(Entry.STANDARD_PROPERTY_NAME_NOTES, "notes"); assertEquals("notes", e1.getNotes()); e1.setProperty(Entry.STANDARD_PROPERTY_NAME_PASSWORD, "password"); assertEquals("password", e1.getPassword()); e1.setProperty(Entry.STANDARD_PROPERTY_NAME_URL, "url"); assertEquals("url", e1.getUrl()); e1.setProperty("silly", "hello"); assertEquals("hello", e1.getProperty("silly")); List<String> properties = new ArrayList<>(Entry.STANDARD_PROPERTY_NAMES);
@Override public E newEntry(Entry<?,?,?,?> entry) { E result = newEntry(); for (String propertyName: entry.getPropertyNames()) { try { // all implementations must support setting of STANDARD_PROPERTY_NAMES result.setProperty(propertyName, entry.getProperty(propertyName)); } catch (UnsupportedOperationException e) { // oh well, we tried } } try { for (String propertyName: (entry.getBinaryPropertyNames())) { try { // all implementations must support setting of STANDARD_PROPERTY_NAMES result.setBinaryProperty(propertyName, entry.getBinaryProperty(propertyName)); } catch (UnsupportedOperationException e) { // oh well, we tried } } } catch (UnsupportedOperationException e) { // never mind } result.setIcon(this.newIcon(entry.getIcon().getIndex())); // everything else should have been copied via properties return result; }
entry1.setUsername("user name"); assertEquals("user name", entry1.getUsername()); entry1.setProperty("random", "new"); assertEquals("new", entry1.getProperty("random")); entry1.setProperty("random", "old"); assertEquals("old", entry1.getProperty("random"));