PublicKeyDefault.java

package org.linkedopenactors.rdfpub.domain.commonsrdf;

import org.apache.commons.rdf.api.Graph;
import org.apache.commons.rdf.api.IRI;
import org.apache.commons.rdf.api.RDF;
import org.linkedopenactors.rdfpub.domain.commonsrdf.vocab.Security;
import org.linkedopenactors.rdfpub.domain.commonsrdf.vocab.Vocabularies;

public class PublicKeyDefault extends ActivityPubObjectDefault implements PublicKey {

	private Security security;
	private RDF rdf;

	public PublicKeyDefault(RDF rdf, IRI subject, Graph graph, GraphToStringConverter graphToStringConverter, SubjectProvider subjectProvider, Vocabularies vocabularies, InstanceProperties instanceProperties) {
		super(rdf, subject, graph, graphToStringConverter, subjectProvider, vocabularies, instanceProperties);
		this.rdf = rdf;
		security = vocabularies.getSecurity();
	}

	@Override
	public void setOwner(IRI owner) {
		set(security.owner(), owner);		
	}

	@Override
	public void setPublicKeyPem(String publicKey) {
		set(security.publicKeyPem(), rdf.createLiteral(publicKey));	
	}
}