From 47086cc541f7d641494670614ba65c9fe6e5a249 Mon Sep 17 00:00:00 2001 From: Gergely POLONKAI Date: Sun, 7 Oct 2012 01:35:20 +0200 Subject: [PATCH] Created basic functionality. May be buggy sometimes yet. --- DependencyInjection/Configuration.php | 46 +++++++++++++++++ .../GergelyPolonkaiSmsSenderExtension.php | 32 ++++++++++++ ....php => GergelyPolonkaiSmsSenderBundle.php | 2 +- Resources/config/services.xml | 16 ++++++ Service/Sender.php | 51 +++++++++++++++++++ 5 files changed, 146 insertions(+), 1 deletion(-) create mode 100644 DependencyInjection/Configuration.php create mode 100644 DependencyInjection/GergelyPolonkaiSmsSenderExtension.php rename SmsSenderBundle.php => GergelyPolonkaiSmsSenderBundle.php (66%) create mode 100644 Resources/config/services.xml create mode 100644 Service/Sender.php diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php new file mode 100644 index 0000000..529f69b --- /dev/null +++ b/DependencyInjection/Configuration.php @@ -0,0 +1,46 @@ +root('gergely_polonkai_sms_sender'); + + $rootNode + ->children() + ->booleanNode('verify_ssl') + ->defaultTrue() + ->end() + ->scalarNode('sender_url') + ->isRequired() + ->end() + ->scalarNode('content_type') + ->defaultValue('application/json') + ->end() + ->scalarNode('content_encoding') + ->defaultValue('utf-8') + ->end() + ->booleanNode('verbose_curl') + ->defaultFalse() + ->end() + ->scalarNode('username') + ->isRequired() + ->end() + ->scalarNode('password') + ->isRequired() + ->end() + ->end(); + + return $treeBuilder; + } +} diff --git a/DependencyInjection/GergelyPolonkaiSmsSenderExtension.php b/DependencyInjection/GergelyPolonkaiSmsSenderExtension.php new file mode 100644 index 0000000..03712b3 --- /dev/null +++ b/DependencyInjection/GergelyPolonkaiSmsSenderExtension.php @@ -0,0 +1,32 @@ +processConfiguration($configuration, $configs); + + $loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); + $loader->load('services.xml'); + + $container->setParameter('verify_ssl', $config['verify_ssl']); + $container->setParameter('sender_url', $config['sender_url']); + $container->setParameter('content_type', $config['content_type']); + $container->setParameter('content_encoding', $config['content_encoding']); + $container->setParameter('verbose_curl', $config['verbose_curl']); + $container->setParameter('username', $config['username']); + $container->setParameter('password', $config['password']); + } +} diff --git a/SmsSenderBundle.php b/GergelyPolonkaiSmsSenderBundle.php similarity index 66% rename from SmsSenderBundle.php rename to GergelyPolonkaiSmsSenderBundle.php index 99300de..eee52fc 100644 --- a/SmsSenderBundle.php +++ b/GergelyPolonkaiSmsSenderBundle.php @@ -3,7 +3,7 @@ namespace GergelyPolonkai\SmsSenderBundle; use Symfony\Component\HttpKernel\Bundle\Bundle; -class SmsSenderBundle extends Bundle +class GergelyPolonkaiSmsSenderBundle extends Bundle { } diff --git a/Resources/config/services.xml b/Resources/config/services.xml new file mode 100644 index 0000000..5cb47f5 --- /dev/null +++ b/Resources/config/services.xml @@ -0,0 +1,16 @@ + + + + + + GergelyPolonkai\SmsSenderBundle\Service\Sender + + + + + + + + \ No newline at end of file diff --git a/Service/Sender.php b/Service/Sender.php new file mode 100644 index 0000000..3256267 --- /dev/null +++ b/Service/Sender.php @@ -0,0 +1,51 @@ +container = $container; + + $this->sender = new BaseSender( + $this->container->getParameter('sender_url'), + $this->container->getParameter('content_type'), + $this->container->getParameter('content_encoding'), + $this->container->getParameter('verify_ssl'), + $this->container->getParameter('verbose_curl') + ); + } + + public function login($username, $password) + { + var_dump($this->sender->login($username, $password)); + } + + public function sendMessage($recipient, $message, array $passwordLocations) + { + var_dump($this->sender->sendMessage($recipient, $message, $passwordLocations)); + } + + public function logout() + { + var_dump($this->sender->logout()); + } +}