Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Ddd File Store Laravel Package

becklyn/ddd-file-store

View on GitHub
Deep Wiki
Context7

Becklyn DDD FileStore

This library provides file storage capabilities using the Becklyn DDD framework.

Requirements

Command handlers and event subscribers must be enabled in the project. See becklyn/ddd-symfony-bridge documentation for how to set this up.

Installation

  • Run composer require becklyn/ddd-file-store
  • Add the following to bundles.php:
Becklyn\Ddd\FileStore\BecklynFileStoreBundle::class => ['all' => true],
  • There is a doctrine migration provided. Execute it by running php bin/console doctrine:migrations:migrate
  • Add the following to services.yaml if the command handlers should log errors:
becklyn_ddd.file_store.handler.create_file:
        class: Becklyn\Ddd\FileStore\Application\CreateFileHandler
        arguments:
            $logger: '@YOUR_PSR_LOGGER_INTERFACE_COMPLIANT_SERVICE_HERE'
        tags:
            - { name: command_handler, register_public_methods: true }

becklyn_ddd.file_store.handler.replace_file_contents:
    class: Becklyn\Ddd\FileStore\Application\ReplaceFileContentsHandler
    arguments:
        $logger: '@YOUR_PSR_LOGGER_INTERFACE_COMPLIANT_SERVICE_HERE'
    tags:
        - { name: command_handler, register_public_methods: true }

How To

Files are saved to the file store by dispatching CreateFileCommand and ReplaceFileContentsCommand through the command bus. Files are read by using the load method of the FileManager class. Files are deleted by dispatching DeleteFileCommand through the command bus. Files created by the library will be stored to %kernel_project_root%/var/becklyn-files folder by default. This can be changed through configuration.

Configuration

To change the values of configuration options from their defaults, create a becklyn_ddd.file_store.yaml file in the config/packages folder with the following contents:

becklyn_ddd.file_store:
   option_name: value
   option_namespace_1:
       namespaced_option_name: value

Available Options

filesystem.base_path

  • Type: string
  • Default: '%kernel_project_root%/var/becklyn-files'

This is the folder where files will be saved to.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky