Commit Graph

109 Commits

Author SHA1 Message Date
7ffccb851c WIP parser for mkvinfo output 2010-10-12 19:13:21 +01:00
8f88fba0ca Added set accessors to Source objects
For Source plugins that can't parse all the required information before
creating the object, set accessors are needed to populate the
information afterwards.
2010-10-12 19:06:27 +01:00
ec4cc8dad4 Removes obsolete status callback from gearman client
Status callback function was previously removed from run-jobs, but the
callback was still being registered. This change removes the
registration to prevent a warning.
2010-09-25 17:11:47 +01:00
14c6d51564 Merge branch 'master' of git+ssh://git.sihnon.net/home/git/public/handbrake-cluster-webui into feature-mkv-plugins 2010-09-24 20:08:07 +01:00
2ef47de25c Added MKV source/worker plugins, tidied sources page
Added placeholder for source plugin to read from an existing mkv file.
Added corresponding worker placeholder to transcode an mkv file using
ffmpeg.
Updated the sources page to show which sources come from which plugins.
2010-09-24 20:05:37 +01:00
9cae5046dc Fixes bug with incorrect exception name
Updates the name of the exception thrown when a database connection
cannot be established, to match with the defined exception class name.
2010-09-18 13:13:31 +01:00
3977dc6038 Fixes bug with undefined class member
HandBrake Worker plugin was a gearman_job member that was not actually
defined by the class. Added the definition to resolve the problem.
2010-09-16 23:49:01 +01:00
cdae2c0f1f Adds phpdoc for Bluray plugins 2010-09-16 23:48:28 +01:00
f9de80a8b4 Fixes detection of Bluray source directories
Fixes the classname of the BlurayDirectoryIterator filter.
Updates the filter to accept only directories that contain a BDAV/BDMV
subdirectory, similar to the VIDEO_TS directory found in DVD sources.
2010-09-16 23:40:53 +01:00
d464dd74c5 Merge branch 'feature-config-datatypes' 2010-09-16 23:18:45 +01:00
1e745a37b7 Adds support for multiple directories to Source plugins
Adds the capability for the HandBrake and Bluray source plugins to look
for sources in multiple directories using the new features of the config
class to support string lists.
2010-09-16 23:16:12 +01:00
45b97e2d5d Adds datatype support to the Config class
The config class now supports a type column in the database which
specifies how the value should be interpreted. The class defines a
number of scalar types, which are returned without transformation. A
string list type is also defined, which splits the value into an array
based on newlines.

Also added phpdoc comments to all class constants, members and methods.
2010-09-16 23:12:29 +01:00
e4071badd9 Adds support for lists returned by selectAssoc
The column values parameter to RippingCluster_Database::selectAssoc()
now accepts an array of columns instead of a single value. If a scalar
is provided, the value is returned as a simple associative array; if an
array is provided, the full list of columns requested is returned as a
nested associative array.
2010-09-16 23:05:46 +01:00
1c402a8aef Placeholders for Bluray rips
Added placeholder Source/Worker plugins for ripping Bluray items.
Added placeholder iterator filter to accept only Bluray sources while
iterating directory contents.
2010-09-15 22:57:38 +01:00
c3a0c23e5e Tidied plugin architecture.
Moved common default init/name methods to a base class, common to all
plugin types.
Added phpdoc comments to various plugin methods.
Updated HandBrake plugins to reflect core changes.
2010-09-15 22:55:18 +01:00
136756293b Improvements to Status Handling
Added link to jobs page to fix any issues caused by non-synchronised
time between webserver/worker machine leaving jobs permanently in the
running state.
Prevented the insertion of new status records unless the state is
actually being changed.
Made the HandBrake worker process write the status complete message
instead of the run-jobs dispatched, in case it crashes.
2010-09-04 18:37:10 +01:00
eb06e60f13 Fixed bug with error handling 2010-09-04 18:30:27 +01:00
98402da94d Delete cached items after the expiry is reached. 2010-09-01 20:41:59 +01:00
cf2da4a499 Update job status directly from the worker
Rather than proxying progress reports back to the client, the worker
will now directly update the database.
2010-09-01 20:16:34 +01:00
802fd308c1 Allow source object to be created even if dir doesn't exist
A job may remain in the database after the source dir has been deleted.
The source object has been changed to permit construction even if the
source it represents doesn't exist, but will throw an exception if any
requests are made of the object.
2010-09-01 20:15:22 +01:00
60ba21ac03 Pass job id with rip options to work around gearman limitation
The Perl version of gearman doesn't support passing the unique value to
the worker, so the job id is now passed in the workload request.
Also fixed a bug to ensure changes to job status are visible
immediately, rather than only on the next page load.
2010-09-01 20:07:05 +01:00
c769f40c2a Fixed bug in source listing introduced by code move 2010-08-30 22:51:34 +01:00
9f2d694265 Updates to pages to reflect lib code changes 2010-08-30 22:05:30 +01:00
22613e030e Adding Source class from earlier botched commit. 2010-08-30 22:03:49 +01:00
e57c89a8ca Added source plugin for handbrake 2010-08-30 22:02:40 +01:00
64d0dac973 Updated status reports of running jobs 2010-08-30 22:00:13 +01:00
d3301a2c82 Fixed strict bug 2010-08-30 21:58:49 +01:00
16fb478652 Moved enumeration of all sources to PluginFactory 2010-08-30 21:56:18 +01:00
f05ceada23 Updated Job to use new plugins. Fixed strict warnings.
Updated Job to contain and correctly pass references to source and rip
plugins.
Fixed strict warnings relating to unquoted array keys.
2010-08-30 21:29:17 +01:00
4040f1cbd8 Deleting renamed file from botched commit 2010-08-30 21:28:01 +01:00
30adbc7e47 Fixed bugs with time calculation and URL redirects
Fixed incorrect time calculations present on the job status page.
Fixed strict bug with URL redirections accessing the wrong _SERVER var.
2010-08-30 21:26:43 +01:00
df34b9718a Added missing exception from earlier commit 2010-08-30 21:26:21 +01:00
ce7bc8dad3 Fixed bugs with progress and failure
Worker correctly reports status updates.
Worker reports failure if HandBrake bails out.
2010-08-30 21:24:32 +01:00
dc60502e00 Removed debug messages 2010-08-30 21:23:42 +01:00
4e59b22f3a Fixed bugs with task runner classes
Fixed strict errors in foreground and background task classes.
2010-08-30 21:01:28 +01:00
de04fb5978 Updated Worker Plugin interface
Added init and name methods, which will be common to all Plugins.
Removed HandBrake specific methods.
2010-08-25 22:36:17 +01:00
89ddcba363 Renamed the codebase to RippingCluster
Since the new design is engine agnostic, removed HandBrake from the
class names.
2010-08-25 21:46:50 +01:00
8c5e8f82c1 Updated DVD Source to use ForegroundTask
DVD Source code was previously using proc_open to manually run
HandBrake. This has been replaced using the ForegroundTask class to
simplify the code.
2010-08-24 21:27:53 +01:00
40fa00c034 Update worker code to the point that it can run.
Added plugin architecture for Worker functions, to support multiple
ripping engines.
Update worker script to use the new code.
Update Logger to output messages to console when running under the
worker script.
2010-08-22 23:05:33 +01:00
853c380e65 Update run-jobs dispatcher to use shared library. 2010-08-22 23:04:40 +01:00
32760b5621 Only display summaries of jobs on home page. 2010-08-22 23:04:11 +01:00
5ee6f027c3 Fixed bug in define name
Fixed HBC_File define name.
2010-08-22 23:03:44 +01:00
fbddd4425b Use client logging table for run-jobs dispatcher 2010-08-22 23:03:00 +01:00
0df1d96cdc Fixed bugs in JobStatus which prevented updates.
Fixed unquoted string bugs.
2010-08-22 23:01:58 +01:00
d6c2c1b9b3 Added optional limits to Job Lists and hid dummy
Added optional limit to the number of jobs retrieved for a given status.
Added conditions to hide a dummy job used to keep the database
consistent when logging client-side info not tied to a specific job.
2010-08-22 22:59:49 +01:00
0ca5a716d6 Updated SourceLister to use DvdDirectoryIterator
Greatly simplified the code to list DVD source directories using
iterator class.
2010-08-22 22:58:31 +01:00
3c9129657d Fixed bugs in ForegroundTask runner
Fixed bugs and tidied code.
2010-08-22 22:57:49 +01:00
9d244ce5ed Added utility file iterator filters
Added SPL iterator filters to quickly and easily list visible files,
class files, and DVD source directories.
2010-08-22 22:56:44 +01:00
83bb33c5e4 WIP new Worker class and worker shell script 2010-08-14 18:24:49 +01:00
474cfb2853 Updated logging to support multiple tables 2010-08-14 18:24:15 +01:00