mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
34 lines
929 B
Java
34 lines
929 B
Java
package io.ebeaninternal.server.profile;
|
|
|
|
import io.ebean.ProfileLocation;
|
|
import io.ebean.meta.MetricType;
|
|
import io.ebean.metric.MetricFactory;
|
|
import io.ebean.metric.TimedMetric;
|
|
import io.ebean.service.SpiProfileLocationFactory;
|
|
|
|
/**
|
|
* Default implementation of the profile location factory.
|
|
*/
|
|
public class DProfileLocationFactory implements SpiProfileLocationFactory {
|
|
|
|
@Override
|
|
public ProfileLocation create() {
|
|
return new DProfileLocation();
|
|
}
|
|
|
|
@Override
|
|
public ProfileLocation create(int lineNumber, String label) {
|
|
|
|
TimedMetric timedMetric = MetricFactory.get().createTimedMetric(MetricType.TXN, "txn.named." + label);
|
|
|
|
DTimedProfileLocation loc = new DTimedProfileLocation(lineNumber, label, timedMetric);
|
|
TimedProfileLocationRegistry.register(loc);
|
|
return loc;
|
|
}
|
|
|
|
@Override
|
|
public ProfileLocation createAt(String location) {
|
|
return new BasicProfileLocation(location);
|
|
}
|
|
}
|