http://git-wip-us.apache.org/repos/asf/jena/blob/2c0454c6/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredModelImpl.java
----------------------------------------------------------------------
diff --git 
a/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredModelImpl.java
 
b/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredModelImpl.java
index f64372f..1e11238 100644
--- 
a/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredModelImpl.java
+++ 
b/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredModelImpl.java
@@ -56,14 +56,16 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void addedStatement(final Statement s) {
+               public void addedStatement(final Statement s)
+                               throws AuthenticationRequiredException {
                        if (canRead(s)) {
                                wrapped.addedStatement(s);
                        }
                }
 
                @Override
-               public void addedStatements(final List<Statement> statements) {
+               public void addedStatements(final List<Statement> statements)
+                               throws AuthenticationRequiredException {
                        if (canRead(Triple.ANY)) {
                                wrapped.addedStatements(statements);
                        } else {
@@ -79,7 +81,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void addedStatements(final Model m) {
+               public void addedStatements(final Model m)
+                               throws AuthenticationRequiredException {
                        if (canRead(Triple.ANY)) {
                                wrapped.addedStatements(m);
                        } else {
@@ -89,7 +92,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void addedStatements(final Statement[] statements) {
+               public void addedStatements(final Statement[] statements)
+                               throws AuthenticationRequiredException {
                        if (canRead(Triple.ANY)) {
                                wrapped.addedStatements(statements);
                        } else {
@@ -107,7 +111,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void addedStatements(final StmtIterator statements) {
+               public void addedStatements(final StmtIterator statements)
+                               throws AuthenticationRequiredException {
                        if (canRead(Triple.ANY)) {
                                wrapped.addedStatements(statements);
                        } else {
@@ -127,14 +132,16 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void removedStatement(final Statement s) {
+               public void removedStatement(final Statement s)
+                               throws AuthenticationRequiredException {
                        if (canRead(s)) {
                                wrapped.removedStatement(s);
                        }
                }
 
                @Override
-               public void removedStatements(final List<Statement> statements) 
{
+               public void removedStatements(final List<Statement> statements)
+                               throws AuthenticationRequiredException {
 
                        if (canRead(Triple.ANY)) {
                                wrapped.removedStatements(statements);
@@ -151,7 +158,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void removedStatements(final Model m) {
+               public void removedStatements(final Model m)
+                               throws AuthenticationRequiredException {
                        if (canRead(Triple.ANY)) {
                                wrapped.removedStatements(m);
                        } else {
@@ -161,7 +169,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void removedStatements(final Statement[] statements) {
+               public void removedStatements(final Statement[] statements)
+                               throws AuthenticationRequiredException {
                        if (canRead(Triple.ANY)) {
                                wrapped.removedStatements(statements);
                        } else {
@@ -179,7 +188,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
 
                @Override
-               public void removedStatements(final StmtIterator statements) {
+               public void removedStatements(final StmtIterator statements)
+                               throws AuthenticationRequiredException {
                        if (canRead(Triple.ANY)) {
                                wrapped.removedStatements(statements);
                        } else {
@@ -194,20 +204,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                }
        }
 
-       /*
-        * private class ReadFilter extends Filter<Resource> { private 
SecuredItem
-        * si; private SecuredResource r; private Property p; ReadFilter(
-        * SecuredItem si, SecuredResource r, Property p ) { this.si = si; 
this.r =
-        * r; this.p = p; }
-        * 
-        * @Override public boolean test(Resource o) { Triple t = new Triple(
-        * r.asNode(), p.asNode(), o.asNode()); return si.canRead(
-        * SecuredItemImpl.convert( t ) ); }};
-        */
        private static final RDFReaderF readerFactory = new RDFReaderFImpl();
 
-       // private static final RDFWriterF writerFactory = new RDFWriterFImpl();
-
        /**
         * Get an instance of SecuredModel
         * 
@@ -260,7 +258,6 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        // The secured graph that this securedModel contains.
        private final SecuredGraph graph;
 
-       //
        Map<ModelChangedListener, SecuredModelChangedListener> listeners = new 
HashMap<ModelChangedListener, SecuredModelChangedListener>();
 
        /**
@@ -293,7 +290,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel add(final List<Statement> statements) {
+       public SecuredModel add(final List<Statement> statements)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                
checkCreateFrontsTriples(WrappedIterator.create(statements.iterator()));
                holder.getBaseItem().add(statements);
@@ -301,7 +300,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel add(final Model m) {
+       public SecuredModel add(final Model m) throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                if (!canCreate(Triple.ANY)) {
                        checkCreateFrontsTriples(m.listStatements());
@@ -311,7 +311,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel add(final Resource s, final Property p, final 
RDFNode o) {
+       public SecuredModel add(final Resource s, final Property p, final 
RDFNode o)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(s.asNode(), p.asNode(), o.asNode()));
                holder.getBaseItem().add(s, p, o);
@@ -319,13 +321,16 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel add(final Resource s, final Property p, final 
String o) {
+       public SecuredModel add(final Resource s, final Property p, final 
String o)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                return add(s, p, o, false);
        }
 
        @Override
        public SecuredModel add(final Resource s, final Property p, final 
String o,
-                       final boolean wellFormed) {
+                       final boolean wellFormed) throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(s.asNode(), p.asNode(),
                                NodeFactory.createLiteral(o, "", wellFormed)));
@@ -335,7 +340,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredModel add(final Resource s, final Property p,
-                       final String lex, final RDFDatatype datatype) {
+                       final String lex, final RDFDatatype datatype)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(s.asNode(), p.asNode(),
                                NodeFactory.createLiteral(lex, datatype)));
@@ -345,7 +352,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredModel add(final Resource s, final Property p, final 
String o,
-                       final String l) {
+                       final String l) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(s.asNode(), p.asNode(),
                                NodeFactory.createLiteral(o, l, false)));
@@ -354,7 +362,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel add(final Statement s) {
+       public SecuredModel add(final Statement s) throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkCreate(s);
                holder.getBaseItem().add(s);
@@ -362,7 +371,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel add(final Statement[] statements) {
+       public SecuredModel add(final Statement[] statements)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                if (!canCreate(Triple.ANY)) {
                        for (final Statement s : statements) {
@@ -375,7 +386,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel add(final StmtIterator iter) {
+       public SecuredModel add(final StmtIterator iter)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                if (!canCreate(Triple.ANY)) {
                        final List<Triple> lst = new ArrayList<Triple>();
@@ -399,51 +412,58 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final boolean o) {
+                       final boolean o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                final Literal l = ResourceFactory.createTypedLiteral(o);
                if (l == null) {
-                       throw new IllegalArgumentException("HOw did we get a 
null");
+                       throw new IllegalArgumentException("How did we get a 
null");
                }
                return add(s, p, l);
        }
 
        @Override
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final char o) {
+                       final char o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                final Literal l = ResourceFactory.createTypedLiteral(o);
                return add(s, p, l);
        }
 
        @Override
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final double o) {
+                       final double o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                final Literal l = ResourceFactory.createTypedLiteral(o);
                return add(s, p, l);
        }
 
        @Override
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final float o) {
+                       final float o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                final Literal l = ResourceFactory.createTypedLiteral(o);
                return add(s, p, l);
        }
 
        @Override
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final int o) {
+                       final int o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                final Literal l = ResourceFactory.createTypedLiteral(o);
                return add(s, p, l);
        }
 
        @Override
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final Literal o) {
+                       final Literal o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                return add(s, p, o);
        }
 
        @Override
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final long o) {
+                       final long o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                final Literal l = ResourceFactory.createTypedLiteral(o);
                return add(s, p, l);
        }
@@ -451,7 +471,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        @Override
        @Deprecated
        public SecuredModel addLiteral(final Resource s, final Property p,
-                       final Object o) {
+                       final Object o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                return add(s, p, asObject(o));
        }
 
@@ -462,7 +483,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredStatement asStatement(final Triple t) {
+       public SecuredStatement asStatement(final Triple t)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                final ExtendedIterator<Triple> iter = 
holder.getBaseItem().getGraph()
                                .find(t);
                final boolean exists = iter.hasNext();
@@ -484,27 +507,6 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                return holder.getSecuredItem();
        }
 
-       // private void checkCreate( final Node n, final Triple t )
-       // {
-       // checkRead(t);
-       // checkCreate(new SecurityEvaluator.SecTriple(n,
-       // SecuredItemImpl.convert(RDF.subject.asNode()),
-       // SecuredItemImpl.convert(t.getSubject())));
-       // checkCreate(new SecurityEvaluator.SecTriple(n,
-       // SecuredItemImpl.convert(RDF.predicate.asNode()),
-       // SecuredItemImpl.convert(t.getPredicate())));
-       // checkCreate(new SecurityEvaluator.SecTriple(n,
-       // SecuredItemImpl.convert(RDF.object.asNode()),
-       // SecuredItemImpl.convert(t.getObject())));
-       // }
-
-       /*
-        * private void checkCreateAnonymousResource( final
-        * SecurityEvaluator.SecNode n ) { checkUpdate(); final
-        * SecurityEvaluator.SecTriple t = new SecurityEvaluator.SecTriple(n,
-        * SecurityEvaluator.SecNode.IGNORE, SecurityEvaluator.SecNode.IGNORE);
-        * checkCreate(t); }
-        */
        @Override
        public void close() {
                holder.getBaseItem().close();
@@ -517,7 +519,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean contains(final Resource s, final Property p) {
+       public boolean contains(final Resource s, final Property p)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                final SecuredStatementIterator iter = new 
SecuredStatementIterator(
                                holder.getSecuredItem(), 
holder.getBaseItem().listStatements(s,
@@ -530,7 +533,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean contains(final Resource s, final Property p, final 
RDFNode o) {
+       public boolean contains(final Resource s, final Property p, final 
RDFNode o)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                final SecuredStatementIterator iter = new 
SecuredStatementIterator(
                                holder.getSecuredItem(), 
holder.getBaseItem().listStatements(s,
@@ -543,7 +547,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean contains(final Resource s, final Property p, final 
String o) {
+       public boolean contains(final Resource s, final Property p, final 
String o)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                final SecuredStatementIterator iter = new 
SecuredStatementIterator(
                                holder.getSecuredItem(), 
holder.getBaseItem().listStatements(s,
@@ -557,7 +562,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public boolean contains(final Resource s, final Property p, final 
String o,
-                       final String l) {
+                       final String l) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                final SecuredStatementIterator iter = new 
SecuredStatementIterator(
                                holder.getSecuredItem(), 
holder.getBaseItem().listStatements(s,
@@ -570,19 +576,22 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean contains(final Statement s) {
+       public boolean contains(final Statement s) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(s);
                return holder.getBaseItem().contains(s);
        }
 
        @Override
-       public boolean containsAll(final Model model) {
+       public boolean containsAll(final Model model) throws 
ReadDeniedException,
+                       AuthenticationRequiredException {
                return containsAll(model.listStatements());
        }
 
        @Override
-       public boolean containsAll(final StmtIterator iter) {
+       public boolean containsAll(final StmtIterator iter)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                final boolean doCheck = canRead(Triple.ANY);
                try {
@@ -602,13 +611,15 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean containsAny(final Model model) {
+       public boolean containsAny(final Model model) throws 
ReadDeniedException,
+                       AuthenticationRequiredException {
                return containsAny(model.listStatements());
 
        }
 
        @Override
-       public boolean containsAny(final StmtIterator iter) {
+       public boolean containsAny(final StmtIterator iter)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                final boolean skipCheck = canRead(Triple.ANY);
                try {
@@ -628,48 +639,56 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public boolean containsLiteral(final Resource s, final Property p,
-                       final boolean o) {
+                       final boolean o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                return contains(s, p, ResourceFactory.createTypedLiteral(o));
        }
 
        @Override
        public boolean containsLiteral(final Resource s, final Property p,
-                       final char o) {
+                       final char o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                return contains(s, p, ResourceFactory.createTypedLiteral(o));
        }
 
        @Override
        public boolean containsLiteral(final Resource s, final Property p,
-                       final double o) {
+                       final double o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                return contains(s, p, ResourceFactory.createTypedLiteral(o));
        }
 
        @Override
        public boolean containsLiteral(final Resource s, final Property p,
-                       final float o) {
+                       final float o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                return contains(s, p, ResourceFactory.createTypedLiteral(o));
        }
 
        @Override
        public boolean containsLiteral(final Resource s, final Property p,
-                       final int o) {
+                       final int o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                return contains(s, p, ResourceFactory.createTypedLiteral(o));
        }
 
        @Override
        public boolean containsLiteral(final Resource s, final Property p,
-                       final long o) {
+                       final long o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                return contains(s, p, ResourceFactory.createTypedLiteral(o));
        }
 
        @Override
        public boolean containsLiteral(final Resource s, final Property p,
-                       final Object o) {
+                       final Object o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                return contains(s, p, asObject(o));
        }
 
        @Override
-       public boolean containsResource(final RDFNode r) {
+       public boolean containsResource(final RDFNode r)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                if (canRead(new Triple(Node.ANY, Node.ANY, Node.ANY))) {
                        return holder.getBaseItem().containsResource(r);
@@ -699,7 +718,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredAlt createAlt() {
+       public SecuredAlt createAlt() throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(SecurityEvaluator.FUTURE, 
RDF.type.asNode(),
                                RDF.Alt.asNode()));
@@ -708,7 +728,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredAlt createAlt(final String uri) {
+       public SecuredAlt createAlt(final String uri) throws 
UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(NodeFactory.createURI(uri), 
RDF.type.asNode(),
                                RDF.Alt.asNode()));
@@ -717,17 +738,18 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredBag createBag() {
+       public SecuredBag createBag() throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
-               checkCreate(new Triple(SecurityEvaluator.FUTURE,
-                               RDF.type.asNode(),
+               checkCreate(new Triple(SecurityEvaluator.FUTURE, 
RDF.type.asNode(),
                                RDF.Bag.asNode()));
                return SecuredBagImpl.getInstance(holder.getSecuredItem(), 
holder
                                .getBaseItem().createBag());
        }
 
        @Override
-       public SecuredBag createBag(final String uri) {
+       public SecuredBag createBag(final String uri) throws 
UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(NodeFactory.createURI(uri), 
RDF.type.asNode(),
                                RDF.Bag.asNode()));
@@ -735,19 +757,25 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                                .getBaseItem().createBag(uri));
        }
 
-       private Model createCopy() {
+       private Model createCopy() throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                return 
ModelFactory.createDefaultModel().add(holder.getSecuredItem());
        }
 
        @Override
-       public SecuredRDFList createList() {
+       public SecuredRDFList createList() throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
+               checkCreate(new Triple(SecurityEvaluator.FUTURE, 
RDF.first.asNode(),
+                               RDF.nil.asNode()));
                return SecuredRDFListImpl.getInstance(holder.getSecuredItem(), 
holder
                                .getBaseItem().createList());
        }
 
        @Override
-       public SecuredRDFList createList(final Iterator<? extends RDFNode> 
members) {
+       public SecuredRDFList createList(final Iterator<? extends RDFNode> 
members)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(SecurityEvaluator.FUTURE, 
RDF.rest.asNode(),
                                SecurityEvaluator.FUTURE));
@@ -775,7 +803,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredRDFList createList(final RDFNode[] members) {
+       public SecuredRDFList createList(final RDFNode[] members)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                return createList(Arrays.asList(members).iterator());
        }
 
@@ -849,13 +879,14 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        @Override
        public SecuredProperty createProperty(final String nameSpace,
                        final String localName) {
-               checkUpdate();
                return SecuredPropertyImpl.getInstance(holder.getSecuredItem(), 
holder
                                .getBaseItem().createProperty(nameSpace, 
localName));
        }
 
        @Override
-       public ReifiedStatement createReifiedStatement(final Statement s) {
+       public SecuredReifiedStatement createReifiedStatement(final Statement s)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreateReified(null, s);
                return 
SecuredReifiedStatementImpl.getInstance(holder.getSecuredItem(),
@@ -863,8 +894,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public ReifiedStatement createReifiedStatement(final String uri,
-                       final Statement s) {
+       public SecuredReifiedStatement createReifiedStatement(final String uri,
+                       final Statement s) throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkCreateReified(uri, s);
                return 
SecuredReifiedStatementImpl.getInstance(holder.getSecuredItem(),
@@ -887,7 +919,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredResource createResource(final Resource type) {
+       public SecuredResource createResource(final Resource type)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                final Triple t = new Triple(SecurityEvaluator.FUTURE,
                                RDF.type.asNode(), type.asNode());
@@ -899,7 +933,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        @Deprecated
-       public SecuredResource createResource(final ResourceF f) {
+       public SecuredResource createResource(final ResourceF f)
+                       throws AuthenticationRequiredException {
                return createResource(null, f);
        }
 
@@ -911,7 +946,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredResource createResource(final String uri, final Resource 
type) {
+       public SecuredResource createResource(final String uri, final Resource 
type)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                final Resource r = ResourceFactory.createResource(uri);
                final Triple t = new Triple(r.asNode(), RDF.type.asNode(),
                                type.asNode());
@@ -935,17 +972,18 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredSeq createSeq() {
+       public SecuredSeq createSeq() throws UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
-               checkCreate(new Triple(SecurityEvaluator.FUTURE,
-                               RDF.type.asNode(),
+               checkCreate(new Triple(SecurityEvaluator.FUTURE, 
RDF.type.asNode(),
                                RDF.Alt.asNode()));
                return SecuredSeqImpl.getInstance(holder.getSecuredItem(), 
holder
                                .getBaseItem().createSeq());
        }
 
        @Override
-       public SecuredSeq createSeq(final String uri) {
+       public SecuredSeq createSeq(final String uri) throws 
UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(NodeFactory.createURI(uri), 
RDF.type.asNode(),
                                RDF.Alt.asNode()));
@@ -955,7 +993,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatement createStatement(final Resource s, final 
Property p,
-                       final RDFNode o) {
+                       final RDFNode o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(s.asNode(), p.asNode(), o.asNode()));
                return 
SecuredStatementImpl.getInstance(holder.getSecuredItem(), holder
@@ -964,7 +1003,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatement createStatement(final Resource s, final 
Property p,
-                       final String o) {
+                       final String o) throws UpdateDeniedException, 
AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(s.asNode(), p.asNode(), 
NodeFactory.createURI(o)));
                return 
SecuredStatementImpl.getInstance(holder.getSecuredItem(), holder
@@ -973,19 +1013,24 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatement createStatement(final Resource s, final 
Property p,
-                       final String o, final boolean wellFormed) {
+                       final String o, final boolean wellFormed)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                return createStatement(s, p, o, "", wellFormed);
        }
 
        @Override
        public SecuredStatement createStatement(final Resource s, final 
Property p,
-                       final String o, final String l) {
+                       final String o, final String l) throws 
UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                return createStatement(s, p, o, l, false);
        }
 
        @Override
        public SecuredStatement createStatement(final Resource s, final 
Property p,
-                       final String o, final String l, final boolean 
wellFormed) {
+                       final String o, final String l, final boolean 
wellFormed)
+                       throws UpdateDeniedException, AddDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                checkCreate(new Triple(s.asNode(), p.asNode(),
                                NodeFactory.createLiteral(o, l, wellFormed)));
@@ -1076,7 +1121,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public Model difference(final Model model) {
+       public Model difference(final Model model) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        return holder.getBaseItem().difference(model);
@@ -1086,7 +1132,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public void enterCriticalSection(final boolean readLockRequested) {
+       public void enterCriticalSection(final boolean readLockRequested)
+                       throws UpdateDeniedException, ReadDeniedException,
+                       AuthenticationRequiredException {
                if (readLockRequested) {
                        checkRead();
                } else {
@@ -1101,13 +1149,15 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public String expandPrefix(final String prefixed) {
+       public String expandPrefix(final String prefixed)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().expandPrefix(prefixed);
        }
 
        @Override
-       public SecuredAlt getAlt(final Resource r) {
+       public SecuredAlt getAlt(final Resource r) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(new Triple(r.asNode(), RDF.type.asNode(), 
RDF.Alt.asNode()));
                return SecuredAltImpl.getInstance(holder.getSecuredItem(), 
holder
@@ -1115,7 +1165,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredAlt getAlt(final String uri) {
+       public SecuredAlt getAlt(final String uri) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(new Triple(NodeFactory.createURI(uri), 
RDF.type.asNode(),
                                RDF.Alt.asNode()));
@@ -1124,7 +1175,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredResource getAnyReifiedStatement(final Statement s) {
+       public SecuredResource getAnyReifiedStatement(final Statement s)
+                       throws ReadDeniedException, UpdateDeniedException,
+                       AddDeniedException, AuthenticationRequiredException {
                final RSIterator it = listReifiedStatements(s);
                if (it.hasNext()) {
                        try {
@@ -1140,7 +1193,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredBag getBag(final Resource r) {
+       public SecuredBag getBag(final Resource r) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(new Triple(r.asNode(), RDF.type.asNode(), 
RDF.Bag.asNode()));
                return SecuredBagImpl.getInstance(holder.getSecuredItem(), 
holder
@@ -1148,7 +1202,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredBag getBag(final String uri) {
+       public SecuredBag getBag(final String uri) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(new Triple(NodeFactory.createURI(uri), 
RDF.type.asNode(),
                                RDF.Bag.asNode()));
@@ -1167,25 +1222,29 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public Map<String, String> getNsPrefixMap() {
+       public Map<String, String> getNsPrefixMap() throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().getNsPrefixMap();
        }
 
        @Override
-       public String getNsPrefixURI(final String prefix) {
+       public String getNsPrefixURI(final String prefix)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().getNsPrefixURI(prefix);
        }
 
        @Override
-       public String getNsURIPrefix(final String uri) {
+       public String getNsURIPrefix(final String uri) throws 
ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().getNsURIPrefix(uri);
        }
 
        @Override
-       public SecuredStatement getProperty(final Resource s, final Property p) 
{
+       public SecuredStatement getProperty(final Resource s, final Property p)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                final StmtIterator stmt = listStatements(s, p, (RDFNode) null);
                try {
                        if (stmt.hasNext()) {
@@ -1201,7 +1260,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredProperty getProperty(final String uri) {
+       public SecuredProperty getProperty(final String uri)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return SecuredPropertyImpl.getInstance(holder.getSecuredItem(), 
holder
                                .getBaseItem().getProperty(uri));
@@ -1209,14 +1269,16 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredProperty getProperty(final String nameSpace,
-                       final String localName) {
+                       final String localName) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return SecuredPropertyImpl.getInstance(holder.getSecuredItem(), 
holder
                                .getBaseItem().getProperty(nameSpace, 
localName));
        }
 
        @Override
-       public SecuredRDFNode getRDFNode(final Node n) {
+       public SecuredRDFNode getRDFNode(final Node n) throws 
ReadDeniedException,
+                       UpdateDeniedException, AuthenticationRequiredException {
                RDFNode rdfNode = null;
                if (n.isLiteral()) {
                        rdfNode = ResourceFactory.createTypedLiteral(
@@ -1227,7 +1289,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
                        rdfNode = 
ResourceFactory.createResource(n.getBlankNodeId()
                                        .toString());
                } else {
-                       throw new IllegalArgumentException("Illegal SecNode 
type: " + n);
+                       throw new IllegalArgumentException("Illegal Node type: "
+                                       + n.getClass());
                }
 
                if (holder.getBaseItem().containsResource(rdfNode)) {
@@ -1268,7 +1331,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatement getRequiredProperty(final Resource s,
-                       final Property p) {
+                       final Property p) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        return 
SecuredStatementImpl.getInstance(holder.getSecuredItem(),
@@ -1300,7 +1364,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredSeq getSeq(final Resource r) {
+       public SecuredSeq getSeq(final Resource r) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(new Triple(r.asNode(), RDF.type.asNode(), 
RDF.Seq.asNode()));
                return SecuredSeqImpl.getInstance(holder.getSecuredItem(), 
holder
@@ -1308,7 +1373,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredSeq getSeq(final String uri) {
+       public SecuredSeq getSeq(final String uri) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(new Triple(NodeFactory.createURI(uri), 
RDF.type.asNode(),
                                RDF.Seq.asNode()));
@@ -1344,7 +1410,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public Model intersection(final Model model) {
+       public Model intersection(final Model model) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                if (!canRead(Triple.ANY)) {
                        return holder.getBaseItem().intersection(model);
@@ -1359,13 +1426,15 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean isEmpty() {
+       public boolean isEmpty() throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().isEmpty();
        }
 
        @Override
-       public boolean isIsomorphicWith(final Model g) {
+       public boolean isIsomorphicWith(final Model g) throws 
ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                final boolean retval = holder.getBaseItem().isIsomorphicWith(g);
                if (retval && !canRead(Triple.ANY)) {
@@ -1390,7 +1459,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean isReified(final Statement s) {
+       public boolean isReified(final Statement s) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                checkRead(s);
 
@@ -1410,7 +1480,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        @Override
        public SecuredStatementIterator listLiteralStatements(
                        final Resource subject, final Property predicate,
-                       final boolean object) {
+                       final boolean object) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem()
@@ -1419,7 +1490,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatementIterator listLiteralStatements(
-                       final Resource subject, final Property predicate, final 
char object) {
+                       final Resource subject, final Property predicate, final 
char object)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem()
@@ -1429,7 +1501,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        @Override
        public SecuredStatementIterator listLiteralStatements(
                        final Resource subject, final Property predicate,
-                       final double object) {
+                       final double object) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem()
@@ -1438,7 +1511,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatementIterator listLiteralStatements(
-                       final Resource subject, final Property predicate, final 
float object) {
+                       final Resource subject, final Property predicate, final 
float object)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem()
@@ -1447,7 +1521,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatementIterator listLiteralStatements(
-                       final Resource subject, final Property predicate, final 
long object) {
+                       final Resource subject, final Property predicate, final 
long object)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem()
@@ -1455,13 +1530,15 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public NsIterator listNameSpaces() {
+       public NsIterator listNameSpaces() throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().listNameSpaces();
        }
 
        @Override
-       public SecuredNodeIterator<RDFNode> listObjects() {
+       public SecuredNodeIterator<RDFNode> listObjects()
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<RDFNode> nIter = 
holder.getBaseItem().listObjects();
                if (!canRead(Triple.ANY)) {
@@ -1471,7 +1548,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredNodeIterator<RDFNode> listObjectsOfProperty(final 
Property p) {
+       public SecuredNodeIterator<RDFNode> listObjectsOfProperty(final 
Property p)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<RDFNode> nIter = holder.getBaseItem()
                                .listObjectsOfProperty(p);
@@ -1483,7 +1561,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredNodeIterator<RDFNode> listObjectsOfProperty(final 
Resource s,
-                       final Property p) {
+                       final Property p) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<RDFNode> nIter = holder.getBaseItem()
                                .listObjectsOfProperty(s, p);
@@ -1494,14 +1573,16 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredRSIterator listReifiedStatements() {
+       public SecuredRSIterator listReifiedStatements()
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredRSIterator(holder.getSecuredItem(), holder
                                .getBaseItem().listReifiedStatements());
        }
 
        @Override
-       public SecuredRSIterator listReifiedStatements(final Statement st) {
+       public SecuredRSIterator listReifiedStatements(final Statement st)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                checkRead(st);
                return new SecuredRSIterator(holder.getSecuredItem(), holder
@@ -1509,7 +1590,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredResIterator listResourcesWithProperty(final Property p) {
+       public SecuredResIterator listResourcesWithProperty(final Property p)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p);
@@ -1522,7 +1604,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listResourcesWithProperty(final Property p,
-                       final boolean o) {
+                       final boolean o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p, o);
@@ -1535,7 +1618,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listResourcesWithProperty(final Property p,
-                       final char o) {
+                       final char o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p, o);
@@ -1548,7 +1632,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listResourcesWithProperty(final Property p,
-                       final double o) {
+                       final double o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p, o);
@@ -1561,7 +1646,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listResourcesWithProperty(final Property p,
-                       final float o) {
+                       final float o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p, o);
@@ -1574,7 +1660,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listResourcesWithProperty(final Property p,
-                       final long o) {
+                       final long o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p, o);
@@ -1587,7 +1674,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listResourcesWithProperty(final Property p,
-                       final Object o) {
+                       final Object o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p, o);
@@ -1600,7 +1688,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listResourcesWithProperty(final Property p,
-                       final RDFNode o) {
+                       final RDFNode o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listResourcesWithProperty(p, o);
@@ -1611,7 +1700,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredStatementIterator listStatements() {
+       public SecuredStatementIterator listStatements()
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem().listStatements());
@@ -1619,7 +1709,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatementIterator listStatements(final Resource s,
-                       final Property p, final RDFNode o) {
+                       final Property p, final RDFNode o) throws 
ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem().listStatements(s, p, o));
@@ -1627,7 +1718,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatementIterator listStatements(final Resource subject,
-                       final Property predicate, final String object) {
+                       final Property predicate, final String object)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem().listStatements(subject, 
predicate, object));
@@ -1635,21 +1727,24 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredStatementIterator listStatements(final Resource subject,
-                       final Property predicate, final String object, final 
String lang) {
+                       final Property predicate, final String object, final 
String lang)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem().listStatements(subject, 
predicate, object, lang));
        }
 
        @Override
-       public SecuredStatementIterator listStatements(final Selector s) {
+       public SecuredStatementIterator listStatements(final Selector s)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return new SecuredStatementIterator(holder.getSecuredItem(), 
holder
                                .getBaseItem().listStatements(s));
        }
 
        @Override
-       public SecuredResIterator listSubjects() {
+       public SecuredResIterator listSubjects() throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = 
holder.getBaseItem().listSubjects();
                if (!canRead(Triple.ANY)) {
@@ -1659,7 +1754,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredResIterator listSubjectsWithProperty(final Property p) {
+       public SecuredResIterator listSubjectsWithProperty(final Property p)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listSubjectsWithProperty(p);
@@ -1671,7 +1767,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listSubjectsWithProperty(final Property p,
-                       final RDFNode o) {
+                       final RDFNode o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listSubjectsWithProperty(p, o);
@@ -1683,7 +1780,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listSubjectsWithProperty(final Property p,
-                       final String o) {
+                       final String o) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listSubjectsWithProperty(p, o);
@@ -1696,7 +1794,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredResIterator listSubjectsWithProperty(final Property p,
-                       final String o, final String l) {
+                       final String o, final String l) throws 
ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                ExtendedIterator<Resource> rIter = holder.getBaseItem()
                                .listSubjectsWithProperty(p, o, l);
@@ -1708,7 +1807,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredPrefixMapping lock() {
+       public SecuredPrefixMapping lock() throws UpdateDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                holder.getBaseItem().lock();
                return holder.getSecuredItem();
@@ -1721,13 +1821,15 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public String qnameFor(final String uri) {
+       public String qnameFor(final String uri) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().qnameFor(uri);
        }
 
        @Override
-       public SecuredModel query(final Selector s) {
+       public SecuredModel query(final Selector s) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return SecuredModelImpl.getInstance(
                                holder.getSecuredItem(),
@@ -1736,130 +1838,65 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel read(final InputStream in, final String base) {
+       public SecuredModel read(final InputStream in, final String base)
+                       throws UpdateDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
-               // try
-               // {
                SecuredModelImpl.readerFactory.getReader().read(
                                holder.getSecuredItem(), in, base);
                return holder.getSecuredItem();
-               // }
-               // catch (final JenaException e)
-               // {
-               // if ((e.getCause() != null)
-               // && (e.getCause() instanceof AccessDeniedRuntimeException))
-               // {
-               // throw (AccessDeniedRuntimeException) e.getCause();
-               // }
-               // throw e;
-               // }
        }
 
        @Override
        public SecuredModel read(final InputStream in, final String base,
-                       final String lang) {
+                       final String lang) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
-               // try
-               // {
                SecuredModelImpl.readerFactory.getReader(lang).read(
                                holder.getSecuredItem(), in, base);
                return holder.getSecuredItem();
-               // }
-               // catch (final JenaException e)
-               // {
-               // if ((e.getCause() != null)
-               // && (e.getCause() instanceof AccessDeniedRuntimeException))
-               // {
-               // throw (AccessDeniedRuntimeException) e.getCause();
-               // }
-               // throw e;
-               // }
        }
 
        @Override
-       public SecuredModel read(final Reader reader, final String base) {
+       public SecuredModel read(final Reader reader, final String base)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
-               // try
-               // {
                SecuredModelImpl.readerFactory.getReader().read(
                                holder.getSecuredItem(), reader, base);
                return holder.getSecuredItem();
-               // }
-               // catch (final JenaException e)
-               // {
-               // if ((e.getCause() != null)
-               // && (e.getCause() instanceof AccessDeniedRuntimeException))
-               // {
-               // throw (AccessDeniedRuntimeException) e.getCause();
-               // }
-               // throw e;
-               // }
        }
 
        @Override
        public SecuredModel read(final Reader reader, final String base,
-                       final String lang) {
+                       final String lang) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
-               // try
-               // {
                SecuredModelImpl.readerFactory.getReader(lang).read(
                                holder.getSecuredItem(), reader, base);
                return holder.getSecuredItem();
-               // }
-               // catch (final JenaException e)
-               // {
-               // if ((e.getCause() != null)
-               // && (e.getCause() instanceof AccessDeniedRuntimeException))
-               // {
-               // throw (AccessDeniedRuntimeException) e.getCause();
-               // }
-               // throw e;
-               // }
        }
 
        @Override
-       public SecuredModel read(final String url) {
+       public SecuredModel read(final String url) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
-               // try
-               // {
                SecuredModelImpl.readerFactory.getReader().read(
                                holder.getSecuredItem(), url);
                return holder.getSecuredItem();
-               // }
-               // catch (final JenaException e)
-               // {
-               // if ((e.getCause() != null)
-               // && (e.getCause() instanceof AccessDeniedRuntimeException))
-               // {
-               // throw (AccessDeniedRuntimeException) e.getCause();
-               // }
-               // throw e;
-               // }
        }
 
        @Override
-       public SecuredModel read(final String url, final String lang) {
+       public SecuredModel read(final String url, final String lang)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
-               // try
-               // {
                SecuredModelImpl.readerFactory.getReader(lang).read(
                                holder.getSecuredItem(), url);
                return holder.getSecuredItem();
-               // }
-               // catch (final JenaException e)
-               // {
-               // if ((e.getCause() != null)
-               // && (e.getCause() instanceof AccessDeniedRuntimeException))
-               // {
-               // throw (AccessDeniedRuntimeException) e.getCause();
-               // }
-               // throw e;
-               // }
        }
 
        @Override
        public SecuredModel read(final String url, final String base,
-                       final String lang) {
+                       final String lang) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                try {
                        final InputStream is = new URL(url).openStream();
                        try {
@@ -1876,7 +1913,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel register(final ModelChangedListener listener) {
+       public SecuredModel register(final ModelChangedListener listener)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                if (!listeners.containsKey(listener)) {
                        final SecuredModelChangedListener secL = new 
SecuredModelChangedListener(
@@ -1888,7 +1926,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel remove(final List<Statement> statements) {
+       public SecuredModel remove(final List<Statement> statements)
+                       throws UpdateDeniedException, DeleteDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                if (!canDelete(Triple.ANY)) {
                        for (final Statement s : statements) {
@@ -1900,7 +1940,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel remove(final Model m) {
+       public SecuredModel remove(final Model m) throws UpdateDeniedException,
+                       DeleteDeniedException, AuthenticationRequiredException {
                checkUpdate();
                if (!canDelete(Triple.ANY)) {
                        final StmtIterator iter = m.listStatements();
@@ -1920,7 +1961,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredModel remove(final Resource s, final Property p,
-                       final RDFNode o) {
+                       final RDFNode o) throws UpdateDeniedException,
+                       DeleteDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkDelete(new Triple(s.asNode(), p.asNode(), o.asNode()));
                holder.getBaseItem().remove(s, p, o);
@@ -1928,7 +1970,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel remove(final Statement s) {
+       public SecuredModel remove(final Statement s) throws 
UpdateDeniedException,
+                       DeleteDeniedException, AuthenticationRequiredException {
                checkUpdate();
                checkDelete(wildCardTriple(s));
                holder.getBaseItem().remove(s);
@@ -1936,7 +1979,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel remove(final Statement[] statements) {
+       public SecuredModel remove(final Statement[] statements)
+                       throws UpdateDeniedException, DeleteDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                if (!canDelete(Triple.ANY)) {
                        for (final Statement s : statements) {
@@ -1948,7 +1993,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel remove(final StmtIterator iter) {
+       public SecuredModel remove(final StmtIterator iter)
+                       throws UpdateDeniedException, DeleteDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                if (!canDelete(Triple.ANY)) {
                        final List<Triple> lst = new ArrayList<Triple>();
@@ -1971,7 +2018,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel removeAll() {
+       public SecuredModel removeAll() throws UpdateDeniedException,
+                       DeleteDeniedException, AuthenticationRequiredException {
                checkUpdate();
                if (!canDelete(Triple.ANY)) {
                        final StmtIterator iter = 
holder.getBaseItem().listStatements();
@@ -1989,7 +2037,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredModel removeAll(final Resource s, final Property p,
-                       final RDFNode r) {
+                       final RDFNode r) throws UpdateDeniedException,
+                       DeleteDeniedException, AuthenticationRequiredException {
                checkUpdate();
                if (!canDelete(new Triple(wildCardNode(s), wildCardNode(p),
                                wildCardNode(r)))) {
@@ -2008,7 +2057,9 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public void removeAllReifications(final Statement s) {
+       public void removeAllReifications(final Statement s)
+                       throws UpdateDeniedException, DeleteDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                if (canDelete(new Triple(Node.ANY, RDF.subject.asNode(),
                                wildCardNode(s.getSubject())))
@@ -2039,14 +2090,17 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredPrefixMapping removeNsPrefix(final String prefix) {
+       public SecuredPrefixMapping removeNsPrefix(final String prefix)
+                       throws UpdateDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
                holder.getBaseItem().removeNsPrefix(prefix);
                return holder.getSecuredItem();
        }
 
        @Override
-       public void removeReification(final ReifiedStatement rs) {
+       public void removeReification(final ReifiedStatement rs)
+                       throws UpdateDeniedException, DeleteDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                if (!canDelete(Triple.ANY)) {
                        final StmtIterator stmtIter = rs.listProperties();
@@ -2062,28 +2116,32 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public boolean samePrefixMappingAs(final PrefixMapping other) {
+       public boolean samePrefixMappingAs(final PrefixMapping other)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().samePrefixMappingAs(other);
        }
 
        @Override
        public SecuredPrefixMapping setNsPrefix(final String prefix,
-                       final String uri) {
+                       final String uri) throws UpdateDeniedException,
+                       AuthenticationRequiredException {
                checkUpdate();
                holder.getBaseItem().setNsPrefix(prefix, uri);
                return holder.getSecuredItem();
        }
 
        @Override
-       public SecuredPrefixMapping setNsPrefixes(final Map<String, String> 
map) {
+       public SecuredPrefixMapping setNsPrefixes(final Map<String, String> map)
+                       throws UpdateDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
                holder.getBaseItem().setNsPrefixes(map);
                return holder.getSecuredItem();
        }
 
        @Override
-       public SecuredPrefixMapping setNsPrefixes(final PrefixMapping other) {
+       public SecuredPrefixMapping setNsPrefixes(final PrefixMapping other)
+                       throws UpdateDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
                holder.getBaseItem().setNsPrefixes(other);
                return holder.getSecuredItem();
@@ -2091,33 +2149,37 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @SuppressWarnings("deprecation")
        @Override
-       public String setReaderClassName(final String lang, final String 
className) {
+       public String setReaderClassName(final String lang, final String 
className)
+                       throws UpdateDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
                return holder.getBaseItem().setReaderClassName(lang, className);
        }
 
        @SuppressWarnings("deprecation")
        @Override
-       public String setWriterClassName(final String lang, final String 
className) {
+       public String setWriterClassName(final String lang, final String 
className)
+                       throws UpdateDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
                return holder.getBaseItem().setWriterClassName(lang, className);
        }
 
        @Override
-       public String shortForm(final String uri) {
+       public String shortForm(final String uri) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().shortForm(uri);
        }
 
        @Override
-       public long size() {
+       public long size() throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().size();
        }
 
        @Override
        public boolean supportsSetOperations() {
-               return holder.getBaseItem().supportsTransactions();
+               return holder.getBaseItem().supportsSetOperations();
        }
 
        @Override
@@ -2126,7 +2188,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public Model union(final Model model) {
+       public Model union(final Model model) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        return holder.getBaseItem().union(model);
@@ -2155,7 +2218,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredPrefixMapping withDefaultMappings(final PrefixMapping 
map) {
+       public SecuredPrefixMapping withDefaultMappings(final PrefixMapping map)
+                       throws UpdateDeniedException, 
AuthenticationRequiredException {
                checkUpdate();
                holder.getBaseItem().withDefaultMappings(map);
                return holder.getSecuredItem();
@@ -2168,7 +2232,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel write(final OutputStream out) {
+       public SecuredModel write(final OutputStream out)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        holder.getBaseItem().write(out);
@@ -2180,7 +2245,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel write(final OutputStream out, final String lang) {
+       public SecuredModel write(final OutputStream out, final String lang)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        holder.getBaseItem().write(out, lang);
@@ -2192,7 +2258,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredModel write(final OutputStream out, final String lang,
-                       final String base) {
+                       final String base) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        holder.getBaseItem().write(out, lang, base);
@@ -2204,7 +2271,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel write(final Writer writer) {
+       public SecuredModel write(final Writer writer) throws 
ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        holder.getBaseItem().write(writer);
@@ -2215,7 +2283,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
        }
 
        @Override
-       public SecuredModel write(final Writer writer, final String lang) {
+       public SecuredModel write(final Writer writer, final String lang)
+                       throws ReadDeniedException, 
AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        holder.getBaseItem().write(writer, lang);
@@ -2227,7 +2296,8 @@ public class SecuredModelImpl extends SecuredItemImpl 
implements SecuredModel {
 
        @Override
        public SecuredModel write(final Writer writer, final String lang,
-                       final String base) {
+                       final String base) throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                if (canRead(Triple.ANY)) {
                        holder.getBaseItem().write(writer, lang, base);

http://git-wip-us.apache.org/repos/asf/jena/blob/2c0454c6/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredPropertyImpl.java
----------------------------------------------------------------------
diff --git 
a/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredPropertyImpl.java
 
b/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredPropertyImpl.java
index ad05b0b..2189a62 100644
--- 
a/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredPropertyImpl.java
+++ 
b/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredPropertyImpl.java
@@ -17,20 +17,21 @@
  */
 package org.apache.jena.permissions.model.impl;
 
-import org.apache.jena.graph.Node ;
+import org.apache.jena.graph.Node;
 import org.apache.jena.permissions.impl.ItemHolder;
 import org.apache.jena.permissions.impl.SecuredItemInvoker;
 import org.apache.jena.permissions.model.SecuredModel;
 import org.apache.jena.permissions.model.SecuredProperty;
-import org.apache.jena.rdf.model.Model ;
-import org.apache.jena.rdf.model.Property ;
+import org.apache.jena.rdf.model.Model;
+import org.apache.jena.rdf.model.Property;
+import org.apache.jena.shared.AuthenticationRequiredException;
+import org.apache.jena.shared.ReadDeniedException;
 
 /**
  * Implementation of SecuredProperty to be used by a SecuredItemInvoker proxy.
  */
 public class SecuredPropertyImpl extends SecuredResourceImpl implements
-               SecuredProperty
-{
+               SecuredProperty {
        /**
         * Get an instance of SecuredProperty
         * 
@@ -40,31 +41,24 @@ public class SecuredPropertyImpl extends 
SecuredResourceImpl implements
         *            The property to secure
         * @return The SecuredProperty
         */
-       public static SecuredProperty getInstance( final SecuredModel 
securedModel,
-                       final Property property )
-       {
-               if (securedModel == null)
-               {
+       public static SecuredProperty getInstance(final SecuredModel 
securedModel,
+                       final Property property) {
+               if (securedModel == null) {
                        throw new IllegalArgumentException(
                                        "Secured securedModel may not be null");
                }
-               if (property == null)
-               {
+               if (property == null) {
                        throw new IllegalArgumentException("Property may not be 
null");
                }
 
                // check that property has a securedModel.
                Property goodProp = property;
-               if (goodProp.getModel() == null)
-               {
+               if (goodProp.getModel() == null) {
                        final Node n = property.asNode();
-                       if (property.isAnon())
-                       {
+                       if (property.isAnon()) {
                                goodProp = 
securedModel.createProperty(n.getBlankNodeId()
                                                .getLabelString());
-                       }
-                       else
-                       {
+                       } else {
                                goodProp = 
securedModel.createProperty(property.asNode()
                                                .getURI());
                        }
@@ -76,10 +70,8 @@ public class SecuredPropertyImpl extends SecuredResourceImpl 
implements
                                securedModel, holder);
                // if we are going to create a duplicate proxy, just return this
                // one.
-               if (goodProp instanceof SecuredProperty)
-               {
-                       if (checker.isEquivalent((SecuredProperty) goodProp))
-                       {
+               if (goodProp instanceof SecuredProperty) {
+                       if (checker.isEquivalent((SecuredProperty) goodProp)) {
                                return (SecuredProperty) goodProp;
                        }
                }
@@ -102,28 +94,25 @@ public class SecuredPropertyImpl extends 
SecuredResourceImpl implements
         */
        private SecuredPropertyImpl(
                        final SecuredModel securedModel,
-                       final ItemHolder<? extends Property, ? extends 
SecuredProperty> holder )
-       {
+                       final ItemHolder<? extends Property, ? extends 
SecuredProperty> holder) {
                super(securedModel, holder);
                this.holder = holder;
        }
 
        @Override
-       public int getOrdinal()
-       {
+       public int getOrdinal() throws ReadDeniedException,
+                       AuthenticationRequiredException {
                checkRead();
                return holder.getBaseItem().getOrdinal();
        }
 
        @Override
-       public Property inModel( final Model m )
-       {
+       public Property inModel(final Model m) {
                return (Property) super.inModel(m);
        }
 
        @Override
-       public boolean isProperty()
-       {
+       public boolean isProperty() {
                return true;
        }
 }

Reply via email to