aboutsummaryrefslogtreecommitdiff
path: root/engine/classes/Importable.php
diff options
context:
space:
mode:
Diffstat (limited to 'engine/classes/Importable.php')
-rw-r--r--engine/classes/Importable.php19
1 files changed, 19 insertions, 0 deletions
diff --git a/engine/classes/Importable.php b/engine/classes/Importable.php
new file mode 100644
index 000000000..23b2ce2c8
--- /dev/null
+++ b/engine/classes/Importable.php
@@ -0,0 +1,19 @@
+<?php
+/**
+ * Define an interface for all ODD importable objects.
+ *
+ * @package Elgg.Core
+ * @subpackage DataModel.Importable
+ */
+interface Importable {
+ /**
+ * Accepts an array of data to import, this data is parsed from the XML produced by export.
+ * The function should return the constructed object data, or NULL.
+ *
+ * @param ODD $data Data in ODD format
+ *
+ * @return bool
+ * @throws ImportException if there was a critical error importing data.
+ */
+ public function import(ODD $data);
+}