#!/usr/bin/env php
<?php
use Symfony\Component\Console\Application;

require_once(__DIR__.'/utils/bootstrap.php');

define('CRAFTSMANPATH', __DIR__.'/');
define('CRAFTSMANVERSION', '5.0.0');

/**
 * CLI Codeigniter Crafstman
 *
 * @author     David Sosa Valdes <https://github.com/davidsosavaldes>
 * @license    MIT License
 * @link       https://github.com/davidsosavaldes/Craftsman
 * @copyright  Copyright (c) 2016, David Sosa Valdes.
 */
$commands = [
  // Generators
  new Craftsman\Commands\Generators\Controller,
  new Craftsman\Commands\Generators\Model,
  new Craftsman\Commands\Generators\Migration,
  new Craftsman\Commands\Generators\Seeder,
  // Migrations
  new Craftsman\Commands\Migrations\Info,
  new Craftsman\Commands\Migrations\Version,
  new Craftsman\Commands\Migrations\Latest,
  new Craftsman\Commands\Migrations\Rollback,
  new Craftsman\Commands\Migrations\Reset,
  new Craftsman\Commands\Migrations\Refresh,
  // General
  new Craftsman\Commands\Serve,
  new Craftsman\Commands\Console,
  new Craftsman\Commands\Notes,
  new Craftsman\Commands\Seeder,
];

$application = new Application('Craftsman', CRAFTSMANVERSION);

// Add the default commands
foreach ($commands as $key => $command)
{
    $application->add($command);
}

$application->run();
