2017 © Pedro Peláez
 

ezpublish-legacy-extension ezdispatchabledfs

eZ Publish Dispatcher DFS backend

image

bdunogier/ezdispatchabledfs

eZ Publish Dispatcher DFS backend

  • Friday, September 12, 2014
  • by bdunogier
  • Repository
  • 15 Watchers
  • 0 Stars
  • 0 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 2 Forks
  • 0 Open issues
  • 7 Versions
  • 0 % Grown

The README.md

DFS Cluster DFS Dispatcher

What is it ?

This extension by itself won't provide any new end-user feature., (*1)

This extension provides a custom DFSBackend that dispatches calls to any DFS backend to a backend from a custom list, based on the path of the file., (*2)

It makes it possible to store some storage subdirectories to custom handlers, such as a cloud based one., (*3)

Actual handlers

An AWS-S3 handler, that stores binary files to Amazon S3, is available: http://github.com/ezsystems/ezdfs-fsbackend-aws-s3., (*4)

Requirements

  • eZ Publish master (5.4.0-dev or 2014.05).
  • eZ DFS configured (NFS itself doesn't matter, a local directory will work just as fine)

Installation

Using composer

It can be installed via composer from eZ Publish, new stack or legacy:, (*5)

composer require "ezsystems/ezdfs-fsbackend-dispatcher:~1.0@beta"

Or by adding "ezsystems/ezdfs-fsbackend-dispatcher": "~1.0@beta" to your project's composer.json., (*6)

Configuration

Due to INI settings loading order limitations, some settings can't be stored into extension INI files but in a global override., (*7)

The contents of the settings/file.ini.append.php file must be copied to settings/override/file.ini.append.php, or obviously merged into it, since it should already exist., (*8)

Backends are configured by adding their class name to the DFSBackends array in file.ini. This will make the dispatcher send operations on files with a path starting with var/ezdemo_site/storage/images to MyCustomBackend., (*9)

PathBackends[var/ezdemo_site/storage/images]=MyCustomBackend

Priority is a simple first-come, first-served. Path that aren't matched by any path in PathBackends are handled by DispatchableDFS.DefaultBackend, by default set to the native eZDFSFileHandlerDFSBackend., (*10)

Backends initialization

By default, backends are instanciated with a simple "new $class". But if a backend implements eZDFSFileHandlerDFSFactoryBackendInterface interface, it will be built by calling the static build() method., (*11)

If any kind of initialization or injection is required, it can be done in this method., (*12)

A typical settings/override/file.ini.append.php with a custom handler enabled would look like this:, (*13)

[ClusteringSettings]
FileHandler=eZDFSFileHandler

[eZDFSClusteringSettings]
MountPointPath=/media/nfs
DFSBackend=eZDFSFileHandlerDFSDispatcher
DBHost=cluster_server
DBName=db_cluster
DBUser=root
DBPassword=
MetaDataTableNameCache=ezdfsfile_cache

[DispatchableDFS]
DefaultBackend=eZDFSFileHandlerDFSBackend

PathBackends[var/site/storage/images]=MyCustomBackend

Remember that DefaultBackend must be explicitly configured in the global override to be taken into account., (*14)

The Versions

12/09 2014

dev-master

9999999-dev

eZ Publish Dispatcher DFS backend

  Sources   Download

GPL-2.0

The Requires

 

The Development Requires

17/07 2014

v1.0.0-beta3

1.0.0.0-beta3

eZ Publish Dispatcher DFS backend

  Sources   Download

GPL-2.0

The Requires

 

The Development Requires

02/07 2014

v1.0.0-beta2

1.0.0.0-beta2

eZ Publish Dispatcher DFS backend

  Sources   Download

GPL-2.0

The Requires

 

The Development Requires

02/07 2014

dev-applyServerUri

dev-applyServerUri

eZ Publish Dispatcher DFS backend

  Sources   Download

GPL-2.0

The Requires

 

The Development Requires

19/06 2014

1.0.0-beta1

1.0.0.0-beta1

eZ Publish Dispatcher DFS backend

  Sources   Download

GPL-2.0

The Requires

 

The Development Requires

06/06 2014

v1.0.0-alpha2

1.0.0.0-alpha2

eZ Publish Dispatcher DFS backend

  Sources   Download

GPL-2.0

The Requires

 

The Development Requires