]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.hibernate/src/main/java/org/argeo/slc/ant/spring/AbstractSpringTask.java
Branch hibernate project from core
[gpl/argeo-slc.git] / org.argeo.slc.hibernate / src / main / java / org / argeo / slc / ant / spring / AbstractSpringTask.java
diff --git a/org.argeo.slc.hibernate/src/main/java/org/argeo/slc/ant/spring/AbstractSpringTask.java b/org.argeo.slc.hibernate/src/main/java/org/argeo/slc/ant/spring/AbstractSpringTask.java
new file mode 100644 (file)
index 0000000..925140f
--- /dev/null
@@ -0,0 +1,25 @@
+package org.argeo.slc.ant.spring;\r
+\r
+import org.springframework.context.ApplicationContext;\r
+\r
+import org.apache.tools.ant.Task;\r
+\r
+import org.argeo.slc.ant.SlcExecutionBuildListener;\r
+import org.argeo.slc.ant.SlcProjectHelper;\r
+import org.argeo.slc.core.process.SlcExecution;\r
+\r
+/** Abstract Ant task providing access to a Spring context. */\r
+public abstract class AbstractSpringTask extends Task {\r
+\r
+       /** Gets the related Spring context. */\r
+       protected ApplicationContext getContext() {\r
+               return (ApplicationContext) getProject().getReference(\r
+                               SlcProjectHelper.REF_ROOT_CONTEXT);\r
+       }\r
+\r
+       /** Gets the related slc execution or null if not is registered. */\r
+       protected SlcExecution getSlcExecution() {\r
+               return (SlcExecution) getProject().getReference(\r
+                               SlcExecutionBuildListener.REF_SLC_EXECUTION);\r
+       }\r
+}\r