/**
* An Interface for MetaData extractors the FAL Indexer uses
*/
-interface ExtractorInterface {
+interface ExtractorInterface extends Resource\Processing\FileBasedConstraintInterface {
/**
- * Returns an array of supported file types;
- * An empty array indicates all filetypes
- *
- * @return array
- */
- public function getFileTypeRestrictions();
-
-
- /**
- * Get all supported DriverClasses
- *
- * Since some extractors may only work for local files, and other extractors
- * are especially made for grabbing data from remote.
- *
- * Returns array of string with driver names of Drivers which are supported,
- * If the driver did not register a name, it's the classname.
- * empty array indicates no restrictions
- *
- * @return array
- */
- public function getDriverRestrictions();
-
- /**
- * Returns the priority of the extraction Service
- * Should be between 1 and 100
+ * Returns the execution priority of the extraction Service
+ * Should be between 1 and 100, 100 means runs as first service, 1 runs at last service
*
* @return integer
*/
- public function getPriority();
+ public function getExecutionPriority();
/**
* Checks if the given file can be processed by this Extractor
* Should return an array with database properties for sys_file_metadata to write
*
* @param Resource\File $file
+ * @param array $previousExtractedData optional, contains the array of already extracted data
* @return array
*/
- public function extractMetaData(Resource\File $file);
-
+ public function extractMetaData(Resource\File $file, array $previousExtractedData = array());
-}
\ No newline at end of file
+}