Uploaded image for project: 'RAML Module Builder'
  1. RAML Module Builder
  2. RMB-170

Add a per-tenant periodic API

    XMLWordPrintable

Details

    • New Feature
    • Status: Closed (View Workflow)
    • P3
    • Resolution: Won't Do
    • None
    • None
    • Core: Platform

    Description

      The current periodic API works, but it operates at a global scope, rather than per-tenant. For some things, this is appropriate, but for something that should happen in the scope of database-contained information, it is problematic. In order to access actual records, it requires that the tenants be extracted via SQL query and dealt with manually.

      This is problematic, as it moves the concern of tenant management and isolation into the module's implementation, meaning a bug there could potentially violate our goals of wanting to avoid any potential cross-tenant data manipulation.

      So, instead of removing or changing the existing API, I would propose that a second API be added that would look something like:

      public interface PeriodicPerTenantAPI {
        /** this implementation should return the delay in which to run the function */
        public long runEvery();
        /** this is the implementation that will be run every runEvery() milliseconds*/
        public void run(Vertx vertx, Context context, String tenantId);
      
      }
      

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                Unassigned Unassigned
                kurt Kurt Nordstrom
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases