Skip to content

Commit

Permalink
Add readme files
Browse files Browse the repository at this point in the history
  • Loading branch information
guewen committed Jul 11, 2017
1 parent 64f4366 commit 4616965
Show file tree
Hide file tree
Showing 3 changed files with 201 additions and 1 deletion.
92 changes: 92 additions & 0 deletions component/README.rst
@@ -0,0 +1,92 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl
:alt: License: AGPL-3

==========
Components
==========

This module implements a component system and is a base block for the Connector
Framework. It can be used without using the full Connector though.

Documentation: http://odoo-connector.com/

Installation
============

* Install ``component``

Configuration
=============

The module does nothing by itself and has no configuration.

Usage
=====

As a developer, you have access to a component system. You can find the
documentation in the code or on http://odoo-connector.com

In a nutshell, you can create components::


from odoo.addons.component.core import Component

class MagentoPartnerAdapter(Component):
_name = 'magento.partner.adapter'
_inherit = 'magento.adapter'

_usage = 'backend.adapter'
_collection = 'magento.backend'
_apply_on = ['res.partner']

And later, find the component you need at runtime (dynamic dispatch at
component level)::

def run(self, external_id):
backend_adapter = self.component(usage='backend.adapter')
external_data = backend_adapter.read(external_id)


Known issues / Roadmap
======================

* ...

Bug Tracker
===========

Bugs are tracked on `GitHub Issues
<https://github.com/OCA/connector/issues>`_. In case of trouble, please
check there if your issue has already been reported. If you spotted it first,
help us smash it by providing detailed and welcomed feedback.

Credits
=======

Images
------

* Odoo Community Association: `Icon <https://github.com/OCA/maintainer-tools/blob/master/template/module/static/description/icon.svg>`_.

Contributors
------------

* Guewen Baconnier <guewen.baconnier@camptocamp.com>

Do not contact contributors directly about support or help with technical issues.

Maintainer
----------

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

To contribute to this module, please visit https://odoo-community.org.
108 changes: 108 additions & 0 deletions component_event/README.rst
@@ -0,0 +1,108 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl
:alt: License: AGPL-3

===================
Components - Events
===================

This module implements an event system (`Observer pattern`_) and is a
base block for the Connector Framework. It can be used without
using the full Connector though. It is built upon the ``component`` module.

Documentation: http://odoo-connector.com/

.. _Observer pattern: https://en.wikipedia.org/wiki/Observer_pattern

Installation
============

* Install ``component_event``

Configuration
=============

The module does nothing by itself and has no configuration.

Usage
=====

As a developer, you have access to a events system. You can find the
documentation in the code or on http://odoo-connector.com

In a nutshell, you can create trigger events::

class Base(models.AbstractModel):
_inherit = 'base'

@api.model
def create(self, vals):
record = super(Base, self).create(vals)
self._event('on_record_create').notify(record, fields=vals.keys())
return record

And subscribe listeners to the events::

from odoo.addons.component.core import Component
from odoo.addons.component_event import skip_if

class MagentoListener(Component):
_name = 'magento.event.listener'
_inherit = 'base.connector.listener'

@skip_if(lambda self, record, **kwargs: self.no_connector_export(record))
def on_record_create(self, record, fields=None):
""" Called when a record is created """
record.with_delay().export_record(fields=fields)


This module triggers 3 events:

* ``on_record_create(record, fields=None)``
* ``on_record_write(record, fields=None)``
* ``on_record_unlink(record)``


Known issues / Roadmap
======================

* ...

Bug Tracker
===========

Bugs are tracked on `GitHub Issues
<https://github.com/OCA/connector/issues>`_. In case of trouble, please
check there if your issue has already been reported. If you spotted it first,
help us smash it by providing detailed and welcomed feedback.

Credits
=======

Images
------

* Odoo Community Association: `Icon <https://github.com/OCA/maintainer-tools/blob/master/template/module/static/description/icon.svg>`_.

Contributors
------------

* Guewen Baconnier <guewen.baconnier@camptocamp.com>

Do not contact contributors directly about support or help with technical issues.

Maintainer
----------

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

To contribute to this module, please visit https://odoo-community.org.

2 changes: 1 addition & 1 deletion connector/README.rst
Expand Up @@ -5,7 +5,7 @@ Connector
=========

This is a framework designed to build connectors with external systems,
usually called `Backends` in the documentation.
usually called ``Backends`` in the documentation.

Documentation: http://odoo-connector.com

Expand Down

0 comments on commit 4616965

Please sign in to comment.