Skip to content

Commit

Permalink
SAK-29863 Add sakai specific rsf pieces
Browse files Browse the repository at this point in the history
Like jsf, wicket and velocity add rsf to parts related to sakai
The code added here was from:
- SakaiRSF
- SakaiRSFComponents
  • Loading branch information
ern committed Sep 18, 2015
1 parent 6128994 commit 2c7023f
Show file tree
Hide file tree
Showing 70 changed files with 4,888 additions and 0 deletions.
85 changes: 85 additions & 0 deletions rsf/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>master</artifactId>
<groupId>org.sakaiproject</groupId>
<version>11-SNAPSHOT</version>
<relativePath>../master/pom.xml</relativePath>
</parent>
<groupId>org.sakaiproject.rsf</groupId>
<artifactId>sakai-rsf</artifactId>
<packaging>pom</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<rsf.version>1.0</rsf.version>
</properties>
<modules>
<module>sakai-rsf-core</module>
<module>sakai-rsf-web</module>
</modules>
<organization>
<name>CARET, University of Cambridge</name>
<url>http://www.caret.cam.ac.uk/</url>
</organization>
<inceptionYear>2005</inceptionYear>
<url>http://www2.caret.cam.ac.uk/rsfwiki/Wiki.jsp?page=SakaiRSF</url>
<description>Abstracts over Sakai dispatch cycle and tool state holders</description>
<developers>
<developer>
<id>amb26</id>
<name>Antranig Basman</name>
<email>[email protected]</email>
<url>http://ponder.org.uk</url>
<organization>CARET</organization>
<organizationUrl>http://www.caret.cam.ac.uk/</organizationUrl>
<roles>
<role>Project Manager</role>
<role>Architect</role>
<role>Developer</role>
</roles>
<timezone>0</timezone>
</developer>
</developers>
<licenses>
<license>
<name>BSD License</name>
<url>http://www.opensource.org/licenses/bsd-license.php</url>
<distribution>repo</distribution>
</license>
</licenses>
<dependencyManagement>
<dependencies>
<dependency>
<artifactId>sakai-rsf-core</artifactId>
<groupId>org.sakaiproject.rsf</groupId>
<version>${project.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>
<!-- Override license plugin from master, since this project uses a different license -->
<plugin>
<groupId>com.mycila</groupId>
<artifactId>license-maven-plugin</artifactId>
<configuration>
<header>com/mycila/maven/plugin/license/templates/BSD-2.txt</header>
<includes>
<include>**/org/sakaiproject/rsf/**/*.java</include>
</includes>
<excludes>
<exclude>target/**</exclude>
</excludes>
<properties>
<year>${project.inceptionYear}</year>
<owner>${project.organization.name}</owner>
</properties>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
137 changes: 137 additions & 0 deletions rsf/sakai-rsf-core/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>sakai-rsf</artifactId>
<groupId>org.sakaiproject.rsf</groupId>
<version>11-SNAPSHOT</version>
</parent>
<packaging>jar</packaging>
<artifactId>sakai-rsf-core</artifactId>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>uk.org.ponder.rsf</groupId>
<artifactId>rsf-core</artifactId>
<version>${rsf.version}</version>
<exclusions>
<exclusion>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</exclusion>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
<exclusion>
<groupId>cglib</groupId>
<artifactId>cglib-nodep</artifactId>
</exclusion>
<exclusion>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.sakaiproject</groupId>
<artifactId>generic-dao</artifactId>
<version>${generic-dao.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.sakaiproject.kernel</groupId>
<artifactId>sakai-kernel-api</artifactId>
</dependency>
<dependency>
<groupId>org.sakaiproject.kernel</groupId>
<artifactId>sakai-kernel-util</artifactId>
</dependency>
<dependency>
<groupId>org.sakaiproject.kernel</groupId>
<artifactId>sakai-component-manager</artifactId>
</dependency>
<dependency>
<groupId>org.sakaiproject.entitybroker</groupId>
<artifactId>entitybroker-api</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</dependency>
</dependencies>

<build>
<sourceDirectory>src/java</sourceDirectory>
<resources>
<!-- include the readme.txt file and the java source files -->
<resource>
<directory>${basedir}</directory>
<includes>
<include>java/*.txt</include>
<include>java/**/*.java</include>
<include>java/**/*.html</include>
<include>java/**/*.xml</include>
<include>java/**/*.properties</include>
</includes>
</resource>
<resource>
<directory>src/java/</directory>
<targetPath>.</targetPath>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
</project>

80 changes: 80 additions & 0 deletions rsf/sakai-rsf-core/src/java/conf/sakai-applicationContext.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<!-- Contains bean overrides and new definitions for application-scope beans required for integration of RSF apps into Sakai -->
<beans>

<!-- In the two main Sakai environments (portal tools, and entity handlers) we are more concerned with rapid and unambiguous response
than we are with URL consistency -->
<bean id="implicitNullRedirect" class="uk.org.ponder.springutil.BooleanFactory">
<property name="value" value="true" />
</bean>

<bean id="flowTokenStateHolder" class="org.sakaiproject.rsf.state.InSakaiSessionTSH">
<property name="sessionManager" ref="org.sakaiproject.tool.api.SessionManager" />
<property name="expirySeconds">
<!-- deliberately short time for testing - all flows will expire after 30 seconds of disuse -->
<value>30</value>
</property>
</bean>

<bean id="bandgapStateHolder" class="org.sakaiproject.rsf.state.InSakaiSessionTSH">
<property name="sessionManager" ref="org.sakaiproject.tool.api.SessionManager" />
<property name="expirySeconds">
<!-- deliberately short time for testing - all errors will expire after 10 seconds of disuse -->
<value>10</value>
</property>
</bean>
<!-- Declaring Resolvers here. Decision must be made in Request Scope -->
<bean name="commonsMultipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />
<bean name="blankMultipartResolver" class="uk.org.ponder.springutil.BlankMultipartResolver" />

<bean id="sakai-ContextProxy" parent="RSACStringBridge">
<property name="targetBeanName" value="sakai-Context" />
</bean>

<bean id="sakaiServletContextLocatorLocator" class="org.sakaiproject.rsf.servlet.SakaiServletContextLocatorLocator"></bean>

<bean id="resourceLoader" class="uk.org.ponder.springutil.ExtraContextResourceLoader">
<property name="servletContextLocator">
<bean factory-bean="sakaiServletContextLocatorLocator" factory-method="getServletContextLocator" />
</property>
</bean>

<bean parent="templateParseInterceptorParent">
<property name="value">
<bean class="org.sakaiproject.rsf.template.SakaiBodyTPI" />
</property>
</bean>

<bean id="sakai-PermissionChecker" class="org.sakaiproject.rsf.util.PermissionChecker">
<property name="securityService" ref="org.sakaiproject.authz.api.SecurityService" />
<property name="toolManager" ref="org.sakaiproject.tool.api.ToolManager" />
<property name="siteService" ref="org.sakaiproject.site.api.SiteService" />
</bean>

<bean id="sakai-MimeIconFetcher" class="org.sakaiproject.rsf.util.MimeIconFetcher">
<property name="contentTypeImageService" ref="org.sakaiproject.content.api.ContentTypeImageService" />
</bean>

<bean id="sakai-LocaleSetter" class="org.sakaiproject.rsf.locale.SakaiLocaleSetter">
<property name="sessionManager" ref="org.sakaiproject.tool.api.SessionManager" />
</bean>

<bean id="frameAdjustingProducer" class="org.sakaiproject.rsf.producers.FrameAdjustingProducer">
<property name="toolManager" ref="org.sakaiproject.tool.api.ToolManager" />
</bean>

<bean parent="handlerHookParent">
<property name="value">
<bean class="org.sakaiproject.rsf.helper.HelperHandlerHook">
<property name="viewParametersProxy" ref="viewParametersProxy" />
<property name="helperHandlerHookBean" ref="helperHandlerHookBeanProxy" />
</bean>
</property>
</bean>
<bean id="helperHandlerHookBeanProxy" parent="RSACBridgeProxy">
<property name="targetBeanName" value="helperHandlerHookBean" />
</bean>

</beans>
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<!-- Contains bean overrides and new definitions for application-scope beans required for integration of RSF apps into Sakai with the
"Entity Broker" system, when used at version 1.3 or greater (support for "EntityView" system) -->
<beans>

<bean id="sakai-EntityViewProxy" parent="RSACBridgeProxy">
<property name="targetBeanName" value="sakai-EntityView" />
</bean>

<bean id="entityViewAccessRegistrar" class="org.sakaiproject.rsf.entitybroker.EntityViewAccessRegistrar">
<property name="commonAccessHandler" ref="commonAccessProvider" />
<property name="entityViewAccessProviderManager" ref="org.sakaiproject.entitybroker.access.EntityViewAccessProviderManager" />
</bean>

<bean parent="defaultViewInferrerParent">
<property name="valueRef" value="EVVPIManager" />
</bean>

<bean id="EVVPIManager" class="org.sakaiproject.rsf.entitybroker.EVVPIManager" init-method="init">
<property name="accessRegistrar" ref="entityViewAccessRegistrar" />
<property name="sakaiEntityView" ref="sakai-EntityViewProxy" />
</bean>

<bean class="uk.org.ponder.springutil.ByClassTLAB">
<property name="targetPath" value="EVVPIManager.entityViewViewParamsInferrers" />
<property name="targetClass" value="org.sakaiproject.rsf.entitybroker.EntityViewViewParamsInferrer" />
</bean>

</beans>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<!-- Contains bean overrides and new definitions for application-scope beans required for integration of RSF apps into Sakai with the
"Entity Broker" system -->
<beans>
<!-- On a request handled by the EntityViewAccessProvider system holds the EntityView object in question - on other requests holds
this dummy default-constructed value. -->
<bean id="sakai-EntityView" class="org.sakaiproject.entitybroker.EntityView" />
</beans>
Loading

0 comments on commit 2c7023f

Please sign in to comment.