package io.ebeaninternal.server.autotune.service;

import io.ebeaninternal.server.autotune.model.Autotune;

import java.util.Collection;

Event where all tuned query information is collected.

This is for writing the "all" file on shutdown when using runtime tuning.

/** * Event where all tuned query information is collected. * <p> * This is for writing the "all" file on shutdown when using runtime tuning. * </p> */
public class AutoTuneAllCollection { final Autotune document = new Autotune(); final BaseQueryTuner queryTuner;
Construct to collect/report all tuned queries.
/** * Construct to collect/report all tuned queries. */
public AutoTuneAllCollection(BaseQueryTuner queryTuner) { this.queryTuner = queryTuner; loadAllTuned(); }
Return the number of origin elements in the document.
/** * Return the number of origin elements in the document. */
public int size() { return document.getOrigin().size(); }
Return the Autotune document object.
/** * Return the Autotune document object. */
public Autotune getDocument() { return document; }
Write the document as an xml file.
/** * Write the document as an xml file. */
public void writeFile(String filePrefix, boolean withNow) { AutoTuneXmlWriter writer = new AutoTuneXmlWriter(); writer.write(document, filePrefix, withNow); }
Loads all the existing query tuning into the document.
/** * Loads all the existing query tuning into the document. */
private void loadAllTuned() { Collection<TunedQueryInfo> all = queryTuner.getAll(); for (TunedQueryInfo tuned : all) { document.getOrigin().add(tuned.getOrigin()); } } }