diff --git a/InvenTree/barcodes/api.py b/InvenTree/barcodes/api.py index 6ab848c3f6..dd596de794 100644 --- a/InvenTree/barcodes/api.py +++ b/InvenTree/barcodes/api.py @@ -12,7 +12,8 @@ from rest_framework.views import APIView from stock.models import StockItem from stock.serializers import StockItemSerializer -from barcodes.barcode import load_barcode_plugins, hash_barcode +from barcodes.barcode import hash_barcode +from plugins.plugins import load_barcode_plugins class BarcodeScan(APIView): diff --git a/InvenTree/barcodes/barcode.py b/InvenTree/barcodes/barcode.py index 7ab9f3716a..51f8a1ffa1 100644 --- a/InvenTree/barcodes/barcode.py +++ b/InvenTree/barcodes/barcode.py @@ -4,8 +4,6 @@ import string import hashlib import logging -from InvenTree import plugins as InvenTreePlugins -from barcodes import plugins as BarcodePlugins from stock.models import StockItem from stock.serializers import StockItemSerializer, LocationSerializer @@ -139,24 +137,3 @@ class BarcodePlugin: Default implementation returns False """ return False - - -def load_barcode_plugins(debug=False): - """ - Function to load all barcode plugins - """ - - logger.debug("Loading barcode plugins") - - plugins = InvenTreePlugins.get_plugins(BarcodePlugins, BarcodePlugin) - - if debug: - if len(plugins) > 0: - logger.info(f"Discovered {len(plugins)} barcode plugins") - - for p in plugins: - logger.debug(" - {p}".format(p=p.PLUGIN_NAME)) - else: - logger.debug("No barcode plugins found") - - return plugins diff --git a/InvenTree/plugins/plugins.py b/InvenTree/plugins/plugins.py index 0b484b05d0..708a2ee2df 100644 --- a/InvenTree/plugins/plugins.py +++ b/InvenTree/plugins/plugins.py @@ -88,3 +88,14 @@ def load_integration_plugins(): Return a list of all registered integration plugins """ return load_plugins('integration', integration, IntegrationPlugin) + + +def load_barcode_plugins(): + """ + Return a list of all registered barcode plugins + """ + from barcodes import plugins as BarcodePlugins + from barcodes.barcode import BarcodePlugin + + return load_plugins('barcode', BarcodePlugins, BarcodePlugin) +