contao-community-alliance/bitbucket-payload

This package is abandoned and no longer maintained. The author suggests using the bit3/bitbucket-payload package instead.

Parse the bitbucket API payload from a webhook.

dev-develop / 1.1.x-dev 2014-11-11 11:53 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:39:28 UTC


README

Version ![Stable Build Status](http://img.shields.io/travis/contao-community-alliance/bitbucket-payload/master.svg?style=flat-square&label=stable build) ![Upstream Build Status](http://img.shields.io/travis/contao-community-alliance/bitbucket-payload/develop.svg?style=flat-square&label=dev build) License Downloads

bitbucket webhook payload

This project contains a set of classes to validate, deserialize and serialize the bitbucket webhook payload. The parser use the jms/serializer internally, that means you can deserialize and serialize the payload as you like.

Requirements

Annotations are used to define the serialisation settings. Depending on your environment, you may need to register an annotation class loader. A very simple way is to register the class_exists function as loader, if you have a global autoloader available.

use Doctrine\Common\Annotations\AnnotationRegistry;
AnnotationRegistry::registerLoader('class_exists');

Usage examples

... in plain php

<?php
require 'vendor/autoload.php';

$parser = new ContaoCommunityAlliance\BitbucketPayload\BitbucketPayloadParser();

$event  = $parser->parsePhp();

... in symfony / http-foundation

namespace MyBundle\Controller;

class MyController
{
    public function myAction(\Symfony\Component\HttpFoundation\Request $request)
    {
        $parser = new \ContaoCommunityAlliance\BitbucketPayload\BitbucketPayloadParser();

        $event  = $parser->parseRequest($request);
    }
}

... in any other environment

$payload   = '...'; // The bitbucket payload, usually the POST body.

$parser = new ContaoCommunityAlliance\BitbucketPayload\BitbucketPayloadParser();

$event  = $parser->parse($payload);