2 * Sone - DefaultOwnIdentity.java - Copyright © 2010–2019 David Roden
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 package net.pterodactylus.sone.freenet.wot;
20 import static com.google.common.base.Preconditions.checkNotNull;
23 * An own identity is an identity that the owner of the node has full control
26 public class DefaultOwnIdentity extends DefaultIdentity implements OwnIdentity {
28 /** The insert URI of the identity. */
29 private final String insertUri;
32 * Creates a new own identity.
35 * The ID of the identity
37 * The nickname of the identity
39 * The request URI of the identity
41 * The insert URI of the identity
43 public DefaultOwnIdentity(String id, String nickname, String requestUri, String insertUri) {
44 super(id, nickname, requestUri);
45 this.insertUri = checkNotNull(insertUri);
53 public String getInsertUri() {
58 public OwnIdentity addContext(String context) {
59 return (OwnIdentity) super.addContext(context);
63 public OwnIdentity removeContext(String context) {
64 return (OwnIdentity) super.removeContext(context);
68 public OwnIdentity setProperty(String name, String value) {
69 return (OwnIdentity) super.setProperty(name, value);
73 public OwnIdentity removeProperty(String name) {
74 return (OwnIdentity) super.removeProperty(name);
82 public int hashCode() {
83 return super.hashCode();
87 public boolean equals(Object object) {
88 return super.equals(object);