Is it possible to create an Autopsy plugin to add a Data Source Type in Python?

I am trying to create a Python (Jython) plugin for The Sleuth Kit’s Autopsy program for it will get data from an online source as a standalone Data Source Type.

Based on what I’ve researched, I’ve found a Java plugin from the 2021 Autopsy Module Development Contest that adds a Data Source Type using the DataSourceProcessor class in Autopsy.

I’ve tried creating it in Python and importing into Autopsy, but it didn’t work. Am I missing something on this part? I also could not find a Python example online that adds a Data Source for me to try to follow. Is there an example or guide that I can look into? Thanks!

from javax.swing import JPanel
from org.sleuthkit.autopsy.corecomponentinterfaces import DataSourceProcessor
from org.sleuthkit.autopsy.corecomponentinterfaces import DataSourceProcessorCallback
from org.sleuthkit.autopsy.corecomponentinterfaces import DataSourceProcessorProgressMonitor
from org.openide.util.lookup import ServiceProvider
from org.sleuthkit.datamodel import Host
from threading import Thread

class DataProcessor(DataSourceProcessor):
    def __init__(self):
        processorPanel = DataProcessorPanel()
        modulename = "Extraction from online"
    
    def getDataSourceType(self):
        return self.modulename
    
    def getPanel(self):
        return self.processorPanel
    
    def isPanelValid(self):
        return self.processorPanel.validatePanel()
    
    def run(self, DataSourceProcessorProgressMonitor progressMonitor, DataSourceProcessorCallback callback):
        thread = Thread(new addDeviceDataTask(processorPanel.getPanelSettings(), progressMonitor, callback))
        thread.start()
        
    def cancel(self):
        return

    def reset(self):
        self.processorPanel.resetPanel()
        
class DataProcessorPanel(JPanel):
    def __init__(self):
        serialVersionUID = 1L
        panelValid = True

Currently there is no way to use Jython (Python) to create a Datasource Processor module. In the next release there will be the ability to do that. Once it is out there is a sample module to show you how to do that.