aboutsummaryrefslogtreecommitdiff
path: root/engine/classes/Exportable.php
diff options
context:
space:
mode:
Diffstat (limited to 'engine/classes/Exportable.php')
-rw-r--r--engine/classes/Exportable.php21
1 files changed, 21 insertions, 0 deletions
diff --git a/engine/classes/Exportable.php b/engine/classes/Exportable.php
new file mode 100644
index 000000000..da5a7cc54
--- /dev/null
+++ b/engine/classes/Exportable.php
@@ -0,0 +1,21 @@
+<?php
+/**
+ * Define an interface for all ODD exportable objects.
+ *
+ * @package Elgg
+ * @subpackage Core
+ * @author Curverider Ltd
+ */
+interface Exportable {
+ /**
+ * This must take the contents of the object and convert it to exportable ODD
+ * @return object or array of objects.
+ */
+ public function export();
+
+ /**
+ * Return a list of all fields that can be exported.
+ * This should be used as the basis for the values returned by export()
+ */
+ public function getExportableValues();
+} \ No newline at end of file