hassankhan/frontman

A simple package to create your own Laravel-style facades

v0.2.1 2015-02-23 22:36 UTC

README

Latest version Software License Build Status Coverage Status Quality Score Total Downloads

Frontman is a simple class that you can extend to create your own Laravel-style facades (or proxies, as they should be called).

Install

Via Composer

$ composer require hassankhan/frontman

Usage


use Frontman\Proxy;
use Frontman\ProxyInterface;

class MyClass
{
    public function foo()
    {
        echo 'Foo';
    }
}

class MyOtherClass
{
    protected $value;

    public function __construct($value)
    {
        $this->value = $value;
    }

    public function bar()
    {
        echo 'Bar';
    }
}

class MyProxy extends Proxy implements ProxyInterface
{
    public static function getRealClass()
    {
        return 'MyClass';
    }
}

class MyOtherProxy extends Proxy implements ProxyInterface
{
    public static function getRealClass()
    {
        return 'MyOtherClass';
    }

    public static function getConstructorArguments()
    {
        return array('5');
    }
}

MyProxy::foo();         // 'Foo'
MyOtherProxy::bar();    // 'Bar'

Contributing

Please see CONTRIBUTING.md for details.

Credits

License

The MIT License (MIT). Please see LICENSE.md for more information.