Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

refactor ArchiveProcessor & Plugins Archiver mechanism #4278

Closed
mattab opened this Issue · 16 comments

1 participant

@mattab
Owner

To prepare for #4124 and #4139 and some other features (MultiSites) refactoring of core ArchiveProcessor and Archiver classes is required.

In particular:

  • rename for consistency
  • remove need for ArchiveProcessor.Day and .Period hooks
  • rename the concept of "Period" archiving to be more generic of "Aggregate Multiple Reports"
@mattab
Owner

In e8bec08: Refs #4278 Remove Archiver hooks and the classes Archiver will be automatically detected.

@mattab
Owner

In 670b24f: Refs #4278 Remove shouldArchive, make getMinTimeArchiveProcessed protected

@mattab
Owner

In 09b56ba: Refs #4278 make isArchiveTemporary protected

@mattab
Owner

In 8a6fad6: Refs #4278 Simplifying ArchiveProcessor: moving internal logic to ArchiveProcessor\Loader
ArchiveProcessor becomes a helper class easier to understand for plugin developers

@mattab
Owner

In 74b8175: Refs #4278 Simplifying ArchiveProcessor

@mattab
Owner

In 16fb491: Refs #4278 Cleanup these Parameters objects

@mattab
Owner

In f3fcfa6: Refs #4278 Creating a new class PluginsArchiver to refactor logic out of ArchiveProcessor\Loader

@mattab
Owner

In 25e7a79: Refs #4278 breaking down functions

@mattab
Owner

In 74226f6: Refs #4278

  • Moving Core visit metrics archiving logic to PluginsArchiver which is consistent
  • Cutting down code that should be unused after refactoring
@mattab
Owner

In 8d5b609: Refs #4278 Breaking the if statements

@mattab
Owner

In ffce42a: Refs #4278 I broke the build, don't know why yet

@mattab
Owner

In f197294: Refs #4278 Rewriting aggregateNumericMetrics() to use DataTable aggregation only (code reuse)

@mattab
Owner

In 0518d45: Refs #4278 to process unique visitors, isSingleSite() is required (no unique visitors cross-sites for now)

@mattab
Owner

In c6d2177: refs #4278 Renames + New hook to let plugins modify idSites to archive

@mattab
Owner

In 9471ce3: Refs #4278 Removing transformMetadata()

@mattab
Owner

This is done. I'm happy with the result of ArchiveProcessor\Loader \PluginsArchiver and main ArchiveProcessor classes. They make sense to me at least, which was not the case before I started on this quest ;)

We will revisit work on archiving as part of 2.1 and these tickets:

  • #4124 Display a custom date-based dataset in a simple Piwik Plugin
  • #4139 New Plugin: Fetch, Archive and Display Custom metrics in Piwik

we created docs for ArchiveProcessor:

@mattab mattab added this to the 2.0 - Piwik 2.0 milestone
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Remove Archiver hooks and the classes Archiver will be aut…
…omatically detected.
e8bec08
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 make isArchiveTemporary protected 09b56ba
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Simplifying ArchiveProcessor: moving internal logic to Arc…
…hiveProcessor\Loader

ArchiveProcessor becomes a helper class easier to understand for plugin developers
8a6fad6
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Simplifying ArchiveProcessor 74b8175
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Cleanup these Parameters objects 16fb491
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Creating a new class PluginsArchiver to refactor logic out…
… of ArchiveProcessor\Loader
f3fcfa6
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 breaking down functions 25e7a79
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278
 * Moving Core visit metrics archiving logic to PluginsArchiver which is consistent
 * Cutting down code that should be unused after refactoring
74226f6
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Breaking the if statements 8d5b609
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 I broke the build, don't know why yet ffce42a
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Rewriting aggregateNumericMetrics() to use DataTable aggre…
…gation only (code reuse)
f197294
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 to process unique visitors, isSingleSite() is required (no…
… unique visitors cross-sites for now)
0518d45
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refactor const to highlight their coupling #4278 884e22d
@sabl0r sabl0r referenced this issue from a commit in sabl0r/piwik
@mattab mattab Refs #4278 Removing transformMetadata() 9471ce3
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.