🌊 Move and manipulate data from one location to another
PHP Makefile
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
src
tests
.editorconfig
.gitignore
.scrutinizer.yml
.travis.yml
CHANGELOG.md
CONTRIBUTING.md
DockerFile
LICENSE.md
Makefile
README.md
composer.json
phpunit.xml.dist

README.md

Data Flow

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

A Flow is a defined series of individual steps each of which modify some data that gets passed to the next step in the flow.

Details

  • Soups simple calling f::moveFiles($targetDir)->each(f::gzip())->moveFiles($ftpDir)->flow($files)
    • transfer files from a remote location, compress using gzip and transfer to another location
  • How to flow
  • Works with PHP 5.6, PHP 7 & HHVM
  • N.B. Uses some command line programs which conform to Ubunutu's syntax.

Commands

Generic

  • run - Iterate through a set of Flows
  • toAll - Send the same input to each Flow at the same time
  • first - Take the first node from a collection
  • last - Take the last node from a collection
  • filter - Filter out nodes from a collection
  • map - Apply a function to each node in a collection
  • each - Apply a FlowInterface to each node in a collection
  • callback - Apply a callback to the node

Files

  • makeDirectory - Make a directory from a file node
  • merge - Merge a collection of files into a file
  • compress - Compress a file
  • decompress - DeCompress a file
  • gzip - Gzip a file
  • gunzip - Gunzip a file
  • zip - Zip a file
  • unzip - Unzip a file
  • copyFile - Copy a file to a new location
  • copyFiles - Cope a collection of files to a new location
  • moveFile - Move a file to a new location
  • moveFiles - Move a collection of files to a new location
  • convertEncoding - Convert the encoding of a file
  • replaceText - Replace the text in a file
  • tail - Retrieve the last n lines of a file
  • head - Retrieve the first n lines of a file

Installation

Via Composer

$ composer require graze/data-flow

Testing

DataFlow has a PHPUnit test suite run through Docker 🐳. To run the tests run the following command:

$ make test

Contributing

Please see CONTRIBUTING for details.

Change log

Please see CHANGELOG for more information what has changed recently.

Security

If you discover any security related issues, please email security@graze.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.