package br.ufrgs.inf.prosoft.tigris.monitoring.aspects;

import br.ufrgs.inf.prosoft.tigris.monitoring.metadata.Key;
import br.ufrgs.inf.prosoft.tigris.monitoring.storage.Repository;

public interface CustomMonitoring extends Runnable {
    void initialize(Repository repository);

    boolean beforeExecuting(Key key);

    void afterExecuting(Key key, Object result);

    Object returnResult(Key key);
}
