add services && controller && first configuration tree builder

This commit is contained in:
Cyprian Beauvois 2019-07-16 11:58:38 +02:00
parent d89a7aba8d
commit e0dee9e9d8
9 changed files with 188 additions and 0 deletions

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
.idea/
vendor/

View File

@ -0,0 +1,16 @@
<?php
namespace Bluesquare\BillingBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
class BillingController extends AbstractController
{
/**
* @Route("/bluesquare/billing-bundle/webhook", name="bluesquare.billing_bundle.webhook")
*/
public function webhook()
{
}
}

View File

@ -0,0 +1,26 @@
<?php
namespace Bluesquare\BillingBundle\DependencyInjection;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Extension\Extension;
class BillingExtension extends Extension
{
public function load(array $configs, ContainerBuilder $container)
{
$configuration = new Configuration();
$loader = new YamlFileLoader(
$container,
new FileLocator(__DIR__.'/../Resources/config')
);
$loader->load('services.yaml');
$this->addAnnotatedClassesToCompile([
'Bluesquare\\BillingBundle\\Controller\\'
]);
$config = $this->processConfiguration($configuration, $configs);
}
}

View File

@ -0,0 +1,25 @@
<?php
namespace Acme\SocialBundle\DependencyInjection;
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
use Symfony\Component\Config\Definition\ConfigurationInterface;
class Configuration implements ConfigurationInterface
{
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder('billing');
$treeBuilder->getRootNode()->children()
->arrayNode('stripe')->children()
->scalarNode('stripe_api_key_pub')->end()
->scalarNode('stripe_api_key')->end()
->scalarNode('stripe_webhook_key')->end()
->end()
->end();
return $treeBuilder;
}
}

View File

View File

@ -0,0 +1,5 @@
services:
# default configuration for services in *this* file
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.

View File

@ -0,0 +1,8 @@
<?php
namespace Bluesquare\BillingBundle\Service;
class PaymentSrv
{
}

View File

@ -0,0 +1,11 @@
<?php
namespace Bluesquare\BillingBundle\Service;
class BillingSrv
{
public function createPurchase($arr)
{
}
}

94
composer.lock generated Normal file
View File

@ -0,0 +1,94 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "aa3de6bb3952a1418d15ede69ae18875",
"packages": [
{
"name": "doctrine/event-manager",
"version": "v1.0.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/event-manager.git",
"reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/event-manager/zipball/a520bc093a0170feeb6b14e9d83f3a14452e64b3",
"reference": "a520bc093a0170feeb6b14e9d83f3a14452e64b3",
"shasum": ""
},
"require": {
"php": "^7.1"
},
"conflict": {
"doctrine/common": "<2.9@dev"
},
"require-dev": {
"doctrine/coding-standard": "^4.0",
"phpunit/phpunit": "^7.0"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.0.x-dev"
}
},
"autoload": {
"psr-4": {
"Doctrine\\Common\\": "lib/Doctrine/Common"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Roman Borschel",
"email": "roman@code-factory.org"
},
{
"name": "Benjamin Eberlei",
"email": "kontakt@beberlei.de"
},
{
"name": "Guilherme Blanco",
"email": "guilhermeblanco@gmail.com"
},
{
"name": "Jonathan Wage",
"email": "jonwage@gmail.com"
},
{
"name": "Johannes Schmitt",
"email": "schmittjoh@gmail.com"
},
{
"name": "Marco Pivetta",
"email": "ocramius@gmail.com"
}
],
"description": "Doctrine Event Manager component",
"homepage": "https://www.doctrine-project.org/projects/event-manager.html",
"keywords": [
"event",
"eventdispatcher",
"eventmanager"
],
"time": "2018-06-11T11:59:03+00:00"
}
],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"prefer-stable": false,
"prefer-lowest": false,
"platform": {
"php": ">=7.1"
},
"platform-dev": []
}