Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
763 commits
Select commit Hold shift + click to select a range
c02235e
Remove field queue_job.retry_pattern
Jun 9, 2015
f077fb7
Add line in the changes file
Jul 3, 2015
7540c55
Mapper: add modifier to follow m2o relations
LeartS Jul 14, 2015
3d082a5
Add simple test case and fix PEP8
LeartS Jul 14, 2015
df0e4b2
Move fields to avoid jobs view overflows
Jul 23, 2015
1e65a3a
A None capacity means infinite. Fix logging error
Jul 24, 2015
04c22ae
Do not pass self as 'message' of set_pending()
Jul 24, 2015
19e5265
[FIX] seconds defaults to RETRY_INTERVAL when no retry_pattern is spe…
Jul 24, 2015
f9d92ca
[FIX] retry_pattern in job decorator.
Jul 27, 2015
20e83a6
create environment with a classmethod
Aug 20, 2015
f6203e2
FIX: pep8
Aug 20, 2015
33c7407
Added unittests
Aug 20, 2015
c61c662
FIX: Make sure kwargs is instantiated
Aug 20, 2015
106a837
FIX: documentation / ADD: authors and changes
Aug 20, 2015
bb97fee
FIX: Typo in CHANGES.rst / DOC: py:meth instead py:class
Aug 20, 2015
b50a4a9
OCA Transbot updated translations from Transifex
oca-transbot Sep 1, 2015
a750ab0
Implemented a default binder to avoid reimplementing it in each conne…
ccomb Jun 2, 2015
431060f
Mention the default implementation is the doc
ccomb Jun 2, 2015
6ee2346
Correct flake8 warning: long line
Jul 3, 2015
a3b6fd1
Slight changes in the docstrings
Jul 3, 2015
04dc4a6
Binder.to_openerp() always returns a recordset
Jul 3, 2015
3590043
Add a line in the changes file
Jul 3, 2015
d1fb32a
Release 3.2.0
Sep 10, 2015
4b45e73
Correct the authors list: missing company
Sep 11, 2015
1ab5287
OCA Transbot updated translations from Transifex
oca-transbot Sep 13, 2015
7cbfd86
Add OCA icon
flotho Aug 21, 2015
bdc2efe
[IMP] improve job runner documentation
sbidoul Sep 26, 2015
a5054c5
[IMP] mention web_kanban in the --load option as it is the odoo default
sbidoul Sep 26, 2015
a942360
[IMP] answer another jobrunner FAQ in the documentation
sbidoul Sep 28, 2015
b3a544b
Allow to define seconds when raising RetryableJobError
Oct 6, 2015
393fab9
Allow to ignore the retry counter when raising RetryableJobError
Oct 6, 2015
afd353a
Exception should be raised with arguments
Oct 7, 2015
a408afb
[UPD] prefix versions with 8.0
sbidoul Oct 9, 2015
256f495
OCA Transbot updated translations from Transifex
oca-transbot Oct 11, 2015
ef8fcc8
Add WooCommerce connector link in documentation
Oct 13, 2015
c9aef2a
[MIG] Make modules uninstallable
pedrobaeza Oct 14, 2015
288d903
Check if a module is installed from the registry
Oct 15, 2015
e733be7
OCA Transbot updated translations from Transifex
oca-transbot Oct 18, 2015
ba0d920
Add 'mock_job_delay_to_direct' to ease tests on jobs
Oct 1, 2015
52211f9
[FIX] Set job to failed after non-retryable OperationalError
npiganeau Oct 26, 2015
3463992
[FIX] Yield session in a clear_upon_failure() environment
npiganeau Oct 21, 2015
3fe8388
Update mailing list address
Oct 30, 2015
95be333
[8.0][FIX] when a job fails, inactive users are added to its followers
Olivier-LAURENT Oct 30, 2015
d4f4413
Context manager to acquire Postgres advisory locks
Nov 2, 2015
8b40bc6
Rename try_advisory_lock to advisory_lock_or_retry
Nov 3, 2015
4d9907e
OCA Transbot updated translations from Transifex
oca-transbot Nov 8, 2015
fd8e763
Update index.rst
maxime-c2c Nov 16, 2015
9191cf1
Set job back to 'pending' in case of exception
mdietrichc2c Nov 18, 2015
75f543b
Fix bug introduced in c97ebbd in jobrunner
Nov 27, 2015
47e0881
Fix the fix c3fefd2 :-(
Dec 3, 2015
470468d
[FIX] correctly obtain the list of database with odoo is started with…
sbidoul Dec 27, 2015
bdb726d
[FIX] ignore dbfilter containing %d or %h, fixes #58
sbidoul Dec 27, 2015
09c7520
Manage non-ascii PG errors
npiganeau Dec 28, 2015
20ced4e
Removed trailing whitespace
npiganeau Dec 28, 2015
ebf690b
Use tools.ustr() instead of unicode()
npiganeau Jan 4, 2016
4c0a20b
OCA Transbot updated translations from Transifex
oca-transbot Jan 16, 2016
8f1984c
Prevent to unpickle globals which are not jobs
Feb 8, 2016
5593810
Fix too long line
Feb 22, 2016
5e52f46
Release 8.0.3.3.0
Feb 29, 2016
7fcbf98
Update mailing list address
Oct 30, 2015
9ee28e4
Update index.rst
maxime-c2c Nov 16, 2015
47e37e2
[FIX] ignore dbfilter, fixes #58
sbidoul Jan 4, 2016
4eb2e6c
[MIG] Make module installable
lmignon Feb 15, 2016
5b06789
[MIG] Use python standard lib unittest in place of unittest2
lmignon Feb 15, 2016
c104856
[MIG] email followers are instance of model 'mail.followers'
lmignon Feb 15, 2016
c9e38f3
[MIG] value returned by _company_default_get is a BrowseRecord
lmignon Feb 15, 2016
a67dfaa
[DEL] Remove the old connector worker
lmignon Feb 15, 2016
043bb2e
[PEP8]
lmignon Feb 15, 2016
dcf1b5e
[FIX] In the last release of Odoo related partner created from an ina…
lmignon Feb 15, 2016
710d955
[FIX] The first version is 9.0.1.0.0
lmignon Feb 15, 2016
119da9b
[FIX] fix path of odoo for doc build
lmignon Feb 18, 2016
d1bffce
[DEL] Remove deprecated APIs
lmignon Feb 29, 2016
95bf4d9
remove remnants of workers
sbidoul Mar 3, 2016
5d5b953
enable the jobrunner by default
sbidoul Mar 3, 2016
b31347a
bump version
sbidoul Mar 3, 2016
fdb3b0f
remove unused import
sbidoul Mar 3, 2016
d379c5b
update changelog
sbidoul Mar 3, 2016
f1899ef
adapt to upstream api change to obtain db connection
sbidoul Mar 3, 2016
70c0a0e
Bump version number
sbidoul Mar 3, 2016
9ab07a4
Update changelog for 9.0.1.0.2
Mar 3, 2016
b137c12
OCA Transbot updated translations from Transifex
oca-transbot Mar 5, 2016
6479239
OCA Transbot updated translations from Transifex
oca-transbot Mar 19, 2016
8335b90
OCA Transbot updated translations from Transifex
oca-transbot Apr 2, 2016
5240ecf
OCA Transbot updated translations from Transifex
oca-transbot Apr 23, 2016
9820944
Move connector settings menu to technical
lasley Apr 29, 2016
e5e4fdb
Fix backend_to_m2o to extract id of the binding
Dec 1, 2015
9023fe2
[DOC] fix highlight of license
yvaucher Jun 29, 2016
780d989
OCA Transbot updated translations from Transifex
oca-transbot Aug 13, 2016
3702069
Add job_uuid in context
YannickB Mar 2, 2016
6576687
Added test for job uuid in session context.
nicolas-petit Mar 11, 2016
5f8f34b
Removing log traces.
nicolas-petit Mar 11, 2016
657678d
[FIX] remove en.po that was erroneously created by transbot
sbidoul Aug 15, 2016
bfd5164
OCA Transbot updated translations from Transifex
oca-transbot Aug 20, 2016
2270571
[FIX] error handling bug
sbidoul Aug 20, 2016
6b54c76
[DOC] remove mention of v9 crowdfunding
sbidoul Aug 20, 2016
a06852a
[REF] remove old code that was there for backward compatibility
sbidoul Aug 20, 2016
ebf3e82
[ADD] first implementation of channel delay
sbidoul Aug 20, 2016
6e2d67f
[IMP] to be consistent, use the same 'now' concept everywhere
sbidoul Aug 20, 2016
afbd0ae
[IMP] more precise wakeup at the end of delays between jobs
sbidoul Aug 22, 2016
f63c3fe
rename delay key as throttle
sbidoul Aug 23, 2016
4e260e2
Fix wrong recordset returned when no binding found
Sep 6, 2016
5b567d8
[FIX] connector: Zero value assertion
lasley Sep 14, 2016
feef057
Remove cancellation of jobs and their active flag
May 24, 2016
7696151
OCA Transbot updated translations from Transifex
oca-transbot Sep 17, 2016
d4f8122
Set addons uninstallable
Oct 3, 2016
ca79507
Make the connector addon installable
Oct 3, 2016
f9e14a4
Replace 'select=True' by 'index=True'
Oct 3, 2016
7314519
Rename openerp to odoo in Python files
Oct 3, 2016
0242da5
Rename xml files with odoo instead of openerp
Oct 3, 2016
2717b8c
Rename openerp to odoo in docs
Oct 3, 2016
c61dc57
Replace monkey-patch by a proper inherit
Oct 3, 2016
1f412a5
Remove usage of @api.one
Oct 3, 2016
9dbb495
Upgrade version number
Oct 4, 2016
15c0151
Replace ConnectorSession by odoo.Environment
Oct 4, 2016
567538d
Merge JobStorage into Job
Oct 4, 2016
abaf4c6
Extract the queue_job from connector
Oct 4, 2016
dcf56f2
Remove ConnectorSession
Oct 4, 2016
e7b303b
Typo
Oct 4, 2016
5f0d78d
Remove migration code for a previous odoo version
Oct 4, 2016
99cea6e
Use short license headers
Jan 12, 2017
ded0383
Add is_module_installed function
Jan 12, 2017
4991aa4
Rework slighty the default Binder
Jan 12, 2017
8d7aec4
Add a test_connector addon
Jan 12, 2017
38477b2
Start to actualize documentation
Jan 12, 2017
d83d3cb
Remove 'env' argument from ConnectorEnvironment
Jan 12, 2017
25f9f67
Remove application flag, not an application
Jan 12, 2017
cccc0fc
str to ustr
leemannd Feb 17, 2017
d61ec42
Tentative to build docs
Mar 6, 2017
fea99a2
Remove invalid URL
Mar 9, 2017
4d23724
OCA Transbot updated translations from Transifex
oca-transbot Mar 11, 2017
7b0e583
[FIX] mapper: Remove orphan method _map_children
lmignon Jun 8, 2017
1a3c1fc
OCA Transbot updated translations from Transifex
oca-transbot Jul 15, 2017
b6f4ffb
Start prototype of a component system
Jan 12, 2017
d0afdb4
Start to implement the collection system
Jan 12, 2017
eb91886
Improve on the collections, work, ...
Jan 15, 2017
1362076
Extract 'components' into an individual addon
Jan 15, 2017
350a54b
Add test_component
Jan 15, 2017
714fc9d
Start to use 'components' in connector
Feb 27, 2017
4491b47
Add core components in connector
Jun 12, 2017
da2ec8e
Add AbstractComponent
Jun 13, 2017
89ad89b
Remove overrides of attributes
Jun 13, 2017
83253ab
Replace unit_for by components
Jun 13, 2017
cb6388d
Instanciate the component returned by name
Jun 13, 2017
3894496
Get rid of MetaMapper
Jun 14, 2017
eca1548
Make unwrap_binding compatible with components
Jun 14, 2017
b1f0351
Use 2 different methods for single/many lookup
Jun 15, 2017
034c8c0
Add tests for connector mapper
Jun 16, 2017
230197e
Add deprecation comments
Jun 16, 2017
7ef4cd1
Remove some Mapper duplication
Jun 16, 2017
8fd65a9
Add/move tests for advisory locks
Jun 16, 2017
63d8065
Update documentation
Jun 17, 2017
f498bc8
Start to write a migration guide
Jun 17, 2017
20e1d8f
Draft new component_event addon
Jun 17, 2017
ea3cfa9
Move test_producer in deprecated
Jun 19, 2017
70e2171
Continue the migration guide
Jun 19, 2017
42081dd
Rewrite some parts of the doc, notably code overview
Jun 19, 2017
242bfe3
Fix test: post_install
Jun 19, 2017
18c404b
We have now the 3 parts with a new API :)
Jun 20, 2017
4be4083
Add Manager group on partner view connector's tab
Jun 21, 2017
a3b4684
Add @skip_if decorator to skip events
Jun 22, 2017
9e9d22b
Change Collection.work_on() to a context manager
Jun 22, 2017
020d102
Remove required on the version field
Jun 23, 2017
30a03d5
Simplify tests by loading modules components
Jun 30, 2017
4f67be9
Add new TestCase classes to test connectors
Jul 4, 2017
0a4bd0a
Exclude current addon in ComponentRegistryCase setup
Jul 6, 2017
eddd106
Add a content index in the migration guide
Jul 10, 2017
f2c0ad0
Checkpoint wizard is too slow
Jul 11, 2017
b23d93b
Add readme files
Jul 11, 2017
458de2f
Bump connector version
Jul 11, 2017
7bb96d8
Add links for versions in doc
Aug 22, 2017
7708925
[10.0][FIX] connector : Avoid creating void child values
rousseldenis Sep 20, 2017
b6caef3
[MIG] Set modules uninstallable
Oct 3, 2017
5e25554
Make addons installable
Oct 3, 2017
6dd3531
PY3: apply automated changes by 2to3 on addons
Oct 3, 2017
a93c405
Remove ConnectorUnit features
Oct 3, 2017
1ca504c
Apply odoo renaming of models or methods in connector
Oct 3, 2017
8d486d4
PY3: hashlib.hasher takes bytes
Oct 3, 2017
2b5d7e3
Use the conventional module layout
Oct 3, 2017
3dc4b53
Fix build of docs
Oct 4, 2017
f511ea0
Build 11.0 docs
Jan 10, 2018
f0d9af6
Fix connector docs dotted path to models
simahawk Mar 30, 2018
1587161
remove obsolete .pot files [ci skip]
sbidoul Jun 15, 2018
e42520d
Translated using Weblate (French)
Jun 27, 2018
54d3501
Improve documentation of APIs
Mar 30, 2018
86daf07
Add RecordLocker component
Jul 18, 2018
bf58084
Translated using Weblate (Portuguese (Brazil))
Aug 3, 2018
fd60ede
Fix documentation build
Nov 6, 2018
c7468a8
Migrate connector to 12.0
Nov 26, 2018
49df39b
[IMP] add generic exporter extracted from Magento connector
Oct 9, 2017
0ceb5c8
Make connector checkpoint compatible in multi company environment
florian-dacosta May 8, 2019
4e3e95c
[IMP] connector: Add Infor and Voicent connectors
max3903 Jul 1, 2019
472686d
Translated using Weblate (Portuguese (Brazil))
Aug 26, 2019
2a822ef
Translated using Weblate (Chinese (Simplified))
liweijie0812 Aug 29, 2019
d8f1f31
Translated using Weblate (Chinese (Simplified))
liweijie0812 Aug 30, 2019
3c828dc
Translated using Weblate (Chinese (Simplified))
liweijie0812 Sep 1, 2019
c5af10b
Set modules uninstallable
Oct 10, 2019
24f6466
[UPD] make the sphinx config version independent
gurneyalex Oct 11, 2019
29f8796
[12.0][CHG] connector: Use more permissive licence: AGPL-> LGPL
lmignon Oct 14, 2019
3c7c513
[MIG] connector and test_connector: Migration to 13.0
Oct 22, 2019
dadb76f
connector, test_connector: black isort
lmignon Oct 25, 2019
19ba0d5
Translated using Weblate (Chinese (Simplified))
liweijie0812 Dec 13, 2019
efb4159
Translated using Weblate (Portuguese (Brazil))
Mar 21, 2020
755df4c
[doc] build 13.0 as main documentation
May 19, 2020
e3c7247
[doc] fix links
May 19, 2020
065d2c8
connector: Delete 12.0 migrations in module 13.0
Jun 17, 2020
85fdd72
Translated using Weblate (Chinese (Simplified))
liweijie0812 Jul 8, 2020
f5ba7e8
[IMP] connector: black, isort, prettier
eantones Oct 16, 2020
508eeda
[MIG] connector: Migration to 14.0
eantones Oct 16, 2020
b59165f
Remove connector checkpoints
guewen Mar 26, 2021
b42a2fa
[UPD] Update connector.pot
oca-travis Mar 26, 2021
cbde0de
[UPD] README.rst
OCA-git-bot Mar 26, 2021
c2f4f8b
connector: add web_icon to root menu item
ruuter Dec 7, 2020
12c1129
connector: new app icon
ruuter Dec 7, 2020
907de54
connector 14.0.1.1.0
OCA-git-bot Aug 16, 2021
d652b1a
Initialize 15.0 branch
lmignon Nov 25, 2021
c224ea9
[MIG][15.0] component
i-vyshnevska Dec 2, 2021
49b0706
[UPD] Update connector.pot
Jan 25, 2022
62ab562
[UPD] README.rst
OCA-git-bot Jan 25, 2022
cc8c524
connector: fix collections.Callable warning
simahawk Apr 13, 2022
a8b84bf
connector 15.0.1.0.1
OCA-git-bot Apr 14, 2022
50f5e7e
Use built-in callable()
florentx May 5, 2022
6675ccb
connector 15.0.1.0.2
OCA-git-bot May 6, 2022
3f6ed4c
[REF] remove explicit 'object' inheritance
florentx Jan 27, 2022
b88106d
[REF] obsolete coding cookie
florentx Feb 2, 2022
6ca274e
[FIX] typos in connector.mapper docstrings
florentx Feb 2, 2022
6924f36
[FIX] connector: restore binder context
danielduqma Sep 9, 2020
6f7ca97
connector 15.0.1.0.3
OCA-git-bot Aug 1, 2022
f2a9b9c
[IMP] connector: bump icon style
ivantodorovich Sep 5, 2022
e084fd9
connector 15.0.1.0.4
OCA-git-bot Sep 5, 2022
2a1c7c3
[16.0][MIG] connector + test_connector: Migration to 16.0
asierneiradev Sep 28, 2022
32c4380
[UPD] Update connector.pot
Feb 23, 2023
fc62ade
[UPD] README.rst
OCA-git-bot Feb 23, 2023
a6f07d7
Translated using Weblate (Spanish)
Ivorra78 Aug 2, 2023
b0b5cca
[UPD] README.rst
OCA-git-bot Sep 3, 2023
52f7577
Update translation files
weblate Oct 9, 2023
61072d1
[IMP] connector: black, isort, prettier
nguyenminhchien Nov 27, 2023
79e8724
[MIG] connector: Migration to 17.0
nguyenminhchien Dec 11, 2023
48f63d8
[UPD] Update connector.pot
Dec 11, 2023
b4a6a4f
[BOT] post-merge updates
OCA-git-bot Dec 11, 2023
fb7b03d
Translated using Weblate (Italian)
mymage Feb 4, 2024
a4393f3
Translated using Weblate (Italian)
mymage Feb 12, 2024
4b9e8dc
[FIX] connector: Pre-commit fixes
pedrobaeza May 1, 2024
5fa56c3
[BOT] post-merge updates
OCA-git-bot May 1, 2024
1d48f91
[MIG] connector: Migration to 18.0
thienvh332 Sep 19, 2024
3873704
[UPD] Update connector.pot
Oct 17, 2024
338b485
[BOT] post-merge updates
OCA-git-bot Oct 17, 2024
21110cb
Update translation files
weblate Oct 17, 2024
0fb933b
[IMP] update dotfiles
OCA-git-bot Oct 20, 2024
af310ee
[IMP] connector: pre-commit auto fixes
mkoeck Nov 26, 2025
dd03d67
[MIG] connector: Migration to 19.0
mkoeck Mar 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
170 changes: 170 additions & 0 deletions connector/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

=========
Connector
=========

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:ee8bf3dca05f71b361db559dd22a0bd4021e2fc048039e905b961a9df1fd9d19
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-LGPL--3-blue.png
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fconnector-lightgray.png?logo=github
:target: https://github.com/OCA/connector/tree/19.0/connector
:alt: OCA/connector
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/connector-19-0/connector-19-0-connector
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/connector&target_branch=19.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

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

Documentation: http://odoo-connector.com

It features:

- A jobs queue

In which the connectors can push functions (synchronization tasks)
to be executed later.

- An event pattern

The connectors can subscribe listener functions on the events,
executed when the events are fired.

- Connector base classes

Called ``ConnectorUnit``.

Include base classes for the use in connectors, ready to be
extended:

- ``Synchronizer``: flow of an import or export
- ``Mapper``: transform a record according to mapping rules
- ``Binder``: link external IDs with local IDS
- ``BackendAdapter``: adapter interface for the exchanges with the
backend
- But ``ConnectorUnit`` can be extended to accomplish any task

- A multi-backend support

Each ``ConnectorUnit`` can be registered amongst a backend type
(eg. Magento) and a backend version (allow to have a different
``Mapper`` for each backend's version for instance)

It is used for example used to connect
`Magento <http://odoo-magento-connector.com>`__ and
`Prestashop <https://github.com/OCA/connector-prestashop>`__, but also
used with Solr, CMIS, ...

**Table of contents**

.. contents::
:local:

Usage
=====

This module does nothing on its own. It is a ground for developing
advanced connector modules. For further information, please go on:
http://odoo-connector.com

Changelog
=========

Next
----

12.0.1.0.0 (2018-11-26)
-----------------------

- [MIGRATION] from 12.0 branched at rev. 324e006

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 to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/connector/issues/new?body=module:%20connector%0Aversion:%2019.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

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

Credits
=======

Authors
-------

* Camptocamp

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

- Guewen Baconnier at Camptocamp
- Alexandre Fayolle at Camptocamp
- Benoit Guillot at Akretion
- Nicolas Bessi at Camptocamp
- Joël Grand-Guillaume at Camptocamp
- Arthur Vuillard at Akretion
- Sebastien Beau at Akretion
- Laurent Mignon at Acsone
- Leonardo Pistone at Camptocamp
- David Béal at Akretion
- Christophe Combelles at Anybox
- Stéphane Bidoul at Acsone
- Malte Jacobi at IBO / HTW
- Laetitia Gangloff at Acsone
- David Lefever at Taktik S.A.
- Jos de Graeve at Apertoso NV
- Jean-Sébastien Suzanne at Anybox
- Leonardo Donelli at MONK Software
- Mathias Colpaert
- Yannick Vaucher at Camptocamp
- Nicolas Piganeau at NDP Systèmes
- Florent Thomas at Mind And Go
- Matthieu Dietrich at Camptocamp
- Olivier Laurent at Acsone
- Eric Antones at NuoBiT Solutions S.L.
- Asier Neira at Factor Libre S.L.
- Nguyen Minh Chien at Trobz.

Other credits
-------------

The migration of this module from 17.0 to 18.0 was financially supported
by Camptocamp.

Maintainers
-----------

This module is maintained by the OCA.

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

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.

This module is part of the `OCA/connector <https://github.com/OCA/connector/tree/19.0/connector>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions connector/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import components
from . import models
18 changes: 18 additions & 0 deletions connector/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright 2013 Camptocamp SA
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html)

{
"name": "Connector",
"version": "19.0.1.0.0",
"author": "Camptocamp,Odoo Community Association (OCA)",
"website": "https://github.com/OCA/connector",
"license": "LGPL-3",
"category": "Generic Modules",
"depends": ["mail", "queue_job", "component", "component_event"],
"data": [
"security/connector_security.xml",
"views/connector_menu.xml",
"views/res_partner_views.xml",
],
"installable": True,
}
7 changes: 7 additions & 0 deletions connector/components/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from . import core
from . import backend_adapter
from . import binder
from . import mapper
from . import listener
from . import locker
from . import synchronizer
64 changes: 64 additions & 0 deletions connector/components/backend_adapter.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Copyright 2013 Camptocamp SA
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html)

"""

Backend Adapter
===============

An external adapter has a common interface to speak with the backend.
It translates the basic orders (search, read, write) to the protocol
used by the backend.

"""

from odoo.addons.component.core import AbstractComponent


class BackendAdapter(AbstractComponent):
"""Base Backend Adapter for the connectors"""

_name = "base.backend.adapter"
_inherit = "base.connector"
_usage = "backend.adapter"


# pylint: disable=W8106
class CRUDAdapter(AbstractComponent):
"""Base External Adapter specialized in the handling
of records on external systems.

This is an empty shell, Components can inherit and implement their own
implementation for the methods.

"""

_name = "base.backend.adapter.crud"
_inherit = "base.backend.adapter"
_usage = "backend.adapter"

def search(self, *args, **kwargs):
"""Search records according to some criterias
and returns a list of ids"""
raise NotImplementedError

def read(self, *args, **kwargs):
"""Returns the information of a record"""
raise NotImplementedError

def search_read(self, *args, **kwargs):
"""Search records according to some criterias
and returns their information"""
raise NotImplementedError

def create(self, *args, **kwargs):
"""Create a record on the external system"""
raise NotImplementedError

def write(self, *args, **kwargs):
"""Update records on the external system"""
raise NotImplementedError

def delete(self, *args, **kwargs):
"""Delete a record on the external system"""
raise NotImplementedError
Loading
Loading