Minor code formatting in docbookk

This commit is contained in:
Luke Taylor 2008-07-11 12:14:00 +00:00
parent d9634bcb39
commit dce709a669

View File

@ -3,7 +3,8 @@
<section xml:id="aop-alliance"> <section xml:id="aop-alliance">
<info> <info>
<title>AOP Alliance (MethodInvocation) Security Interceptor</title></info> <title>AOP Alliance (MethodInvocation) Security Interceptor</title>
</info>
<para> <para>
Prior to Spring Security 2.0, securing <literal>MethodInvocation</literal>s needed quite a Prior to Spring Security 2.0, securing <literal>MethodInvocation</literal>s needed quite a
@ -49,7 +50,9 @@
</section> </section>
<section xml:id="aspectj"> <section xml:id="aspectj">
<info><title>AspectJ (JoinPoint) Security Interceptor</title></info> <info>
<title>AspectJ (JoinPoint) Security Interceptor</title>
</info>
<para>The AspectJ security interceptor is very similar to the AOP <para>The AspectJ security interceptor is very similar to the AOP
Alliance security interceptor discussed in the previous section. Alliance security interceptor discussed in the previous section.
@ -100,11 +103,12 @@
<para>Next you'll need to define an AspectJ <literal>aspect</literal>. <para>Next you'll need to define an AspectJ <literal>aspect</literal>.
For example:</para> For example:</para>
<programlisting>package org.springframework.security.samples.aspectj; <programlisting>
package org.springframework.security.samples.aspectj;
import org.springframework.security.intercept.method.aspectj.AspectJSecurityInterceptor; import org.springframework.security.intercept.method.aspectj.AspectJSecurityInterceptor;
import org.springframework.security.intercept.method.aspectj.AspectJCallback; import org.springframework.security.intercept.method.aspectj.AspectJCallback;
import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.InitializingBean;
public aspect DomainObjectInstanceSecurityAspect implements InitializingBean { public aspect DomainObjectInstanceSecurityAspect implements InitializingBean {
@ -114,30 +118,31 @@ pointcut domainObjectInstanceExecution(): target(PersistableEntity)
&amp;&amp; execution(public * *(..)) &amp;&amp; !within(DomainObjectInstanceSecurityAspect); &amp;&amp; execution(public * *(..)) &amp;&amp; !within(DomainObjectInstanceSecurityAspect);
Object around(): domainObjectInstanceExecution() { Object around(): domainObjectInstanceExecution() {
if (this.securityInterceptor != null) { if (this.securityInterceptor == null) {
return proceed();
}
AspectJCallback callback = new AspectJCallback() { AspectJCallback callback = new AspectJCallback() {
public Object proceedWithObject() { public Object proceedWithObject() {
return proceed(); return proceed();
} }
}; };
return this.securityInterceptor.invoke(thisJoinPoint, callback);
} else { return this.securityInterceptor.invoke(thisJoinPoint, callback);
return proceed();
}
} }
public AspectJSecurityInterceptor getSecurityInterceptor() { public AspectJSecurityInterceptor getSecurityInterceptor() {
return securityInterceptor; return securityInterceptor;
} }
public void setSecurityInterceptor(AspectJSecurityInterceptor securityInterceptor) { public void setSecurityInterceptor(AspectJSecurityInterceptor securityInterceptor) {
this.securityInterceptor = securityInterceptor; this.securityInterceptor = securityInterceptor;
} }
public void afterPropertiesSet() throws Exception { public void afterPropertiesSet() throws Exception {
if (this.securityInterceptor == null) if (this.securityInterceptor == null)
throw new IllegalArgumentException("securityInterceptor required"); throw new IllegalArgumentException("securityInterceptor required");
} }
}</programlisting> }</programlisting>
<para>In the above example, the security interceptor will be applied <para>In the above example, the security interceptor will be applied
@ -155,13 +160,12 @@ if (this.securityInterceptor == null)
with the <literal>AspectJSecurityInterceptor</literal>. A bean with the <literal>AspectJSecurityInterceptor</literal>. A bean
declaration which achieves this is shown below:</para> declaration which achieves this is shown below:</para>
<programlisting> <programlisting><![CDATA[
&lt;bean id="domainObjectInstanceSecurityAspect" <bean id="domainObjectInstanceSecurityAspect"
class="org.springframework.security.samples.aspectj.DomainObjectInstanceSecurityAspect" class="org.springframework.security.samples.aspectj.DomainObjectInstanceSecurityAspect"
factory-method="aspectOf"&gt; factory-method="aspectOf">
&lt;property name="securityInterceptor"&gt;&lt;ref bean="aspectJSecurityInterceptor"/&gt;&lt;/property&gt; <property name="securityInterceptor" ref="aspectJSecurityInterceptor"/>
&lt;/bean&gt; </bean>]]>
</programlisting> </programlisting>
<para>That's it! Now you can create your beans from anywhere within <para>That's it! Now you can create your beans from anywhere within
@ -173,7 +177,6 @@ if (this.securityInterceptor == null)
<section xml:id="filter-invocation-authorization"> <section xml:id="filter-invocation-authorization">
<info><title>FilterInvocation Security Interceptor</title></info> <info><title>FilterInvocation Security Interceptor</title></info>
<para>To secure <classname>FilterInvocation</classname>s, developers need <para>To secure <classname>FilterInvocation</classname>s, developers need
to add a <literal>FilterSecurityInterceptor</literal> to their filter chain. to add a <literal>FilterSecurityInterceptor</literal> to their filter chain.
A typical configuration example is provided below:</para> A typical configuration example is provided below:</para>