[ 
https://issues.apache.org/jira/browse/METRON-777?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16104053#comment-16104053
 ] 

ASF GitHub Bot commented on METRON-777:
---------------------------------------

Github user ottobackwards commented on the issue:

    https://github.com/apache/metron/pull/530
  
    ```bash
    
    .
    ├── java
    │   └── org
    │       └── apache
    │           └── metron
    │               ├── bundles
    │               │   ├── AbstractFoo.java -> CREATED -> replaces Nifi 
abstract class AbstractProcessor
    │               │   ├── BundleThreadContextClassLoaderTest.java -> MOVED 
from 
/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-nar-utils/src/test/java/org/apache/nifi/nar/NarThreadContextClassLoaderTest.java
    │               │   ├── BundleUnpackerTest.java ->MOVED from 
/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-nar-utils/src/test/java/org/apache/nifi/nar/NarUnpackerTest.java
    │               │   ├── BundleUtilTest.java -> RENAMED 
NarBundleUtilTest.java
    │               │   ├── ExtensionClassInitializerTest.java -> CREATED
    │               │   ├── integration
    │               │   │   └── BundleUnpackerIntegrationTest.java -> CREATED 
-> version of Unpacker test, but against HDFS
    │               │   └── util
    │               │       └── TestUtil.java -> CREATED
    │               └── parsers
    │                   └── interfaces
    │                       └── MessageParser.java -> CREATED, for matching 
classes in test bundles
    └── resources
        ├── BundleUnpacker -> Properties and bundles to validate loading and 
mapping
        │   ├── conf
        │   │   └── bundle.properties
        │   ├── lib
        │   │   └── metron-parser-bar-bundle-0.4.1.bundle
        │   └── lib2
        │       └── metron-parser-foo-bundle-0.4.1.bundle
        ├── META-INF
        │   └── services
        │       └── org.apache.metron.bundles.AbstractFoo
        ├── bundle.properties
        └── utils-bundles -> MANIFESTS to test reading and parsing
            ├── bundle-with-versioning
            │   └── META-INF
            │       └── MANIFEST.MF
            ├── bundle-without-dependency
            │   └── META-INF
            │       └── MANIFEST.MF
            └── bundle-without-versioning
                └── META-INF
                    └── MANIFEST.MF
    ```


> Create a plugin system for Metron based on 'NAR'
> ------------------------------------------------
>
>                 Key: METRON-777
>                 URL: https://issues.apache.org/jira/browse/METRON-777
>             Project: Metron
>          Issue Type: New Feature
>            Reporter: Otto Fowler
>            Assignee: Otto Fowler
>
> The success of the Metron project will be greatly dependent on community 
> participation, and with that the ability to adapt and extend Metron without 
> having to maintain a fork of the project.
> As organizations and individuals look to extend the Metron system with custom 
> parsers, enrichments, and stellar functions that may be proprietary in 
> nature, the ability to develop and deploy these extensions outside the Metron 
> code base is critically important.
> To that end, and after community discussion and proposal we create or 
> formalize the 'plugin' development story in Metron.  
> The proposal is to adapt the Apache Nifi NAR system for use in Metron.  This 
> will provide the system with:
> * archetype(s) for developer projects and independent development
> * defined packaging and metadata for 'plugin' products
> * loading and instantiation with classloader isolation capabilities
> * removing the necessity for shading plugin jars
> These capabilities will also enable other features, such as plugin lifecycle, 
> plugin configuration+redeployment, and other things.
> The plugin archetypes and their installation will be a followon



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to