parent
fbaf209240
commit
7b9cd20e98
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2013-2015 the original author or authors.
|
||||
* Copyright 2013-2016 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
@ -32,18 +32,6 @@ import org.springframework.jmx.export.annotation.ManagedResource;
|
|||
@ManagedResource
|
||||
public class DataEndpointMBean extends EndpointMBean {
|
||||
|
||||
/**
|
||||
* Create a new {@link DataEndpointMBean} instance.
|
||||
* @param beanName the bean name
|
||||
* @param endpoint the endpoint to wrap
|
||||
* @deprecated since 1.3 in favor of
|
||||
* {@link #DataEndpointMBean(String, Endpoint, ObjectMapper)}
|
||||
*/
|
||||
@Deprecated
|
||||
public DataEndpointMBean(String beanName, Endpoint<?> endpoint) {
|
||||
super(beanName, endpoint);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new {@link DataEndpointMBean} instance.
|
||||
* @param beanName the bean name
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2013-2015 the original author or authors.
|
||||
* Copyright 2013-2016 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
@ -32,18 +32,6 @@ import org.springframework.jmx.export.annotation.ManagedResource;
|
|||
@ManagedResource
|
||||
public class ShutdownEndpointMBean extends EndpointMBean {
|
||||
|
||||
/**
|
||||
* Create a new {@link ShutdownEndpointMBean} instance.
|
||||
* @param beanName the bean name
|
||||
* @param endpoint the endpoint to wrap
|
||||
* @deprecated since 1.3 in favor of
|
||||
* {@link #ShutdownEndpointMBean(String, Endpoint, ObjectMapper)}
|
||||
*/
|
||||
@Deprecated
|
||||
public ShutdownEndpointMBean(String beanName, Endpoint<?> endpoint) {
|
||||
super(beanName, endpoint);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new {@link ShutdownEndpointMBean} instance.
|
||||
* @param beanName the bean name
|
||||
|
|
|
|||
|
|
@ -1,139 +0,0 @@
|
|||
/*
|
||||
* Copyright 2012-2015 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.actuate.metrics.writer;
|
||||
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.concurrent.ConcurrentMap;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import com.codahale.metrics.Counter;
|
||||
import com.codahale.metrics.Gauge;
|
||||
import com.codahale.metrics.Histogram;
|
||||
import com.codahale.metrics.Meter;
|
||||
import com.codahale.metrics.MetricRegistry;
|
||||
import com.codahale.metrics.Timer;
|
||||
|
||||
import org.springframework.boot.actuate.metrics.Metric;
|
||||
import org.springframework.boot.actuate.metrics.dropwizard.DropwizardMetricServices;
|
||||
|
||||
/**
|
||||
* A {@link MetricWriter} that send data to a Dropwizard {@link MetricRegistry} based on a
|
||||
* naming convention.
|
||||
*
|
||||
* <ul>
|
||||
* <li>Updates to {@link #increment(Delta)} with names in "meter.*" are treated as
|
||||
* {@link Meter} events</li>
|
||||
* <li>Other deltas are treated as simple {@link Counter} values</li>
|
||||
* <li>Inputs to {@link #set(Metric)} with names in "histogram.*" are treated as
|
||||
* {@link Histogram} updates</li>
|
||||
* <li>Inputs to {@link #set(Metric)} with names in "timer.*" are treated as {@link Timer}
|
||||
* updates</li>
|
||||
* <li>Other metrics are treated as simple {@link Gauge} values (single valued
|
||||
* measurements of type double)</li>
|
||||
* </ul>
|
||||
*
|
||||
* @author Dave Syer
|
||||
* @deprecated Since 1.3 in favor of {@link DropwizardMetricServices}
|
||||
*/
|
||||
@Deprecated
|
||||
public class DropwizardMetricWriter implements MetricWriter {
|
||||
|
||||
private final MetricRegistry registry;
|
||||
|
||||
private final ConcurrentMap<String, Object> gaugeLocks = new ConcurrentHashMap<String, Object>();
|
||||
|
||||
/**
|
||||
* Create a new {@link DropwizardMetricWriter} instance.
|
||||
* @param registry the underlying metric registry
|
||||
*/
|
||||
public DropwizardMetricWriter(MetricRegistry registry) {
|
||||
this.registry = registry;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void increment(Delta<?> delta) {
|
||||
String name = delta.getName();
|
||||
long value = delta.getValue().longValue();
|
||||
if (name.startsWith("meter")) {
|
||||
Meter meter = this.registry.meter(name);
|
||||
meter.mark(value);
|
||||
}
|
||||
else {
|
||||
Counter counter = this.registry.counter(name);
|
||||
counter.inc(value);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void set(Metric<?> value) {
|
||||
String name = value.getName();
|
||||
if (name.startsWith("histogram")) {
|
||||
long longValue = value.getValue().longValue();
|
||||
Histogram metric = this.registry.histogram(name);
|
||||
metric.update(longValue);
|
||||
}
|
||||
else if (name.startsWith("timer")) {
|
||||
long longValue = value.getValue().longValue();
|
||||
Timer metric = this.registry.timer(name);
|
||||
metric.update(longValue, TimeUnit.MILLISECONDS);
|
||||
}
|
||||
else {
|
||||
final double gauge = value.getValue().doubleValue();
|
||||
// Ensure we synchronize to avoid another thread pre-empting this thread after
|
||||
// remove causing an error in Dropwizard Metrics
|
||||
// NOTE: Dropwizard Metrics provides no way to do this atomically
|
||||
synchronized (getGaugeLock(name)) {
|
||||
this.registry.remove(name);
|
||||
this.registry.register(name, new SimpleGauge(gauge));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private Object getGaugeLock(String name) {
|
||||
Object lock = this.gaugeLocks.get(name);
|
||||
if (lock == null) {
|
||||
Object newLock = new Object();
|
||||
lock = this.gaugeLocks.putIfAbsent(name, newLock);
|
||||
lock = (lock == null ? newLock : lock);
|
||||
}
|
||||
return lock;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reset(String metricName) {
|
||||
this.registry.remove(metricName);
|
||||
}
|
||||
|
||||
/**
|
||||
* Simple {@link Gauge} implementation to {@literal double} value.
|
||||
*/
|
||||
private final static class SimpleGauge implements Gauge<Double> {
|
||||
|
||||
private final double value;
|
||||
|
||||
private SimpleGauge(double value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Double getValue() {
|
||||
return this.value;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
/*
|
||||
* Copyright 2012-2015 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.orm.jpa;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
|
||||
import org.springframework.orm.jpa.JpaVendorAdapter;
|
||||
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
|
||||
import org.springframework.orm.jpa.persistenceunit.PersistenceUnitManager;
|
||||
|
||||
/**
|
||||
* Convenient builder for JPA EntityManagerFactory instances. Collects common
|
||||
* configuration when constructed and then allows you to create one or more
|
||||
* {@link LocalContainerEntityManagerFactoryBean} through a fluent builder pattern. The
|
||||
* most common options are covered in the builder, but you can always manipulate the
|
||||
* product of the builder if you need more control, before returning it from a
|
||||
* {@code @Bean} definition.
|
||||
*
|
||||
* @author Dave Syer
|
||||
* @since 1.1.0
|
||||
* @deprecated since 1.3.0 in favor of
|
||||
* {@link org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder}
|
||||
*/
|
||||
@Deprecated
|
||||
public class EntityManagerFactoryBuilder {
|
||||
|
||||
private final Delegate delegate;
|
||||
|
||||
/**
|
||||
* Create a new instance passing in the common pieces that will be shared if multiple
|
||||
* EntityManagerFactory instances are created.
|
||||
* @param jpaVendorAdapter a vendor adapter
|
||||
* @param properties common configuration options, including generic map for JPA
|
||||
* vendor properties
|
||||
* @param persistenceUnitManager optional source of persistence unit information (can
|
||||
* be null)
|
||||
*/
|
||||
public EntityManagerFactoryBuilder(JpaVendorAdapter jpaVendorAdapter,
|
||||
JpaProperties properties, PersistenceUnitManager persistenceUnitManager) {
|
||||
this.delegate = new Delegate(jpaVendorAdapter, properties.getProperties(),
|
||||
persistenceUnitManager);
|
||||
}
|
||||
|
||||
public Builder dataSource(DataSource dataSource) {
|
||||
return new Builder(this.delegate.dataSource(dataSource));
|
||||
}
|
||||
|
||||
/**
|
||||
* An optional callback for new entity manager factory beans.
|
||||
* @param callback the entity manager factory bean callback
|
||||
*/
|
||||
public void setCallback(final EntityManagerFactoryBeanCallback callback) {
|
||||
this.delegate.setCallback(
|
||||
new org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder.EntityManagerFactoryBeanCallback() {
|
||||
|
||||
@Override
|
||||
public void execute(LocalContainerEntityManagerFactoryBean factory) {
|
||||
callback.execute(factory);
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* A fluent builder for a LocalContainerEntityManagerFactoryBean.
|
||||
* @deprecated since 1.3.0 in favor of
|
||||
* {@link org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder}
|
||||
*/
|
||||
@Deprecated
|
||||
public final class Builder {
|
||||
|
||||
private final org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder.Builder delegate;
|
||||
|
||||
private Builder(
|
||||
org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder.Builder delegate) {
|
||||
this.delegate = delegate;
|
||||
}
|
||||
|
||||
/**
|
||||
* The names of packages to scan for {@code @Entity} annotations.
|
||||
* @param packagesToScan packages to scan
|
||||
* @return the builder for fluent usage
|
||||
*/
|
||||
public Builder packages(String... packagesToScan) {
|
||||
this.delegate.packages(packagesToScan);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* The classes whose packages should be scanned for {@code @Entity} annotations.
|
||||
* @param basePackageClasses the classes to use
|
||||
* @return the builder for fluent usage
|
||||
*/
|
||||
public Builder packages(Class<?>... basePackageClasses) {
|
||||
this.delegate.packages(basePackageClasses);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* The name of the persistence unit. If only building one EntityManagerFactory you
|
||||
* can omit this, but if there are more than one in the same application you
|
||||
* should give them distinct names.
|
||||
* @param persistenceUnit the name of the persistence unit
|
||||
* @return the builder for fluent usage
|
||||
*/
|
||||
public Builder persistenceUnit(String persistenceUnit) {
|
||||
this.delegate.persistenceUnit(persistenceUnit);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generic properties for standard JPA or vendor-specific configuration. These
|
||||
* properties override any values provided in the {@link JpaProperties} used to
|
||||
* create the builder.
|
||||
* @param properties the properties to use
|
||||
* @return the builder for fluent usage
|
||||
*/
|
||||
public Builder properties(Map<String, ?> properties) {
|
||||
this.delegate.properties(properties);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Configure if using a JTA {@link DataSource}, i.e. if
|
||||
* {@link LocalContainerEntityManagerFactoryBean#setDataSource(DataSource)
|
||||
* setDataSource} or
|
||||
* {@link LocalContainerEntityManagerFactoryBean#setJtaDataSource(DataSource)
|
||||
* setJtaDataSource} should be called on the
|
||||
* {@link LocalContainerEntityManagerFactoryBean}.
|
||||
* @param jta if the data source is JTA
|
||||
* @return the builder for fluent usage
|
||||
*/
|
||||
public Builder jta(boolean jta) {
|
||||
this.delegate.jta(jta);
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalContainerEntityManagerFactoryBean build() {
|
||||
return this.delegate.build();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* A callback for new entity manager factory beans created by a Builder.
|
||||
* @deprecated since 1.3.0 in favor of
|
||||
* {@link org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder}
|
||||
*/
|
||||
@Deprecated
|
||||
public interface EntityManagerFactoryBeanCallback {
|
||||
|
||||
void execute(LocalContainerEntityManagerFactoryBean factory);
|
||||
|
||||
}
|
||||
|
||||
private static class Delegate
|
||||
extends org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder {
|
||||
|
||||
Delegate(JpaVendorAdapter jpaVendorAdapter, Map<String, ?> jpaProperties,
|
||||
PersistenceUnitManager persistenceUnitManager) {
|
||||
super(jpaVendorAdapter, jpaProperties, persistenceUnitManager);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
/*
|
||||
* Copyright 2012-2015 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.orm.jpa;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
|
||||
import org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter;
|
||||
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.mockito.Mockito.mock;
|
||||
|
||||
/**
|
||||
* Tests for {@link EntityManagerFactoryBuilder}.
|
||||
*
|
||||
* @author Dave Syer
|
||||
*/
|
||||
@Deprecated
|
||||
public class EntityManagerFactoryBuilderTests {
|
||||
|
||||
private JpaProperties properties = new JpaProperties();
|
||||
|
||||
private DataSource dataSource1 = mock(DataSource.class);
|
||||
|
||||
private DataSource dataSource2 = mock(DataSource.class);
|
||||
|
||||
@Test
|
||||
public void entityManagerFactoryPropertiesNotOverwritingDefaults() {
|
||||
EntityManagerFactoryBuilder factory = new EntityManagerFactoryBuilder(
|
||||
new HibernateJpaVendorAdapter(), this.properties, null);
|
||||
LocalContainerEntityManagerFactoryBean result1 = factory
|
||||
.dataSource(this.dataSource1)
|
||||
.properties(Collections.singletonMap("foo", "spam")).build();
|
||||
assertFalse(result1.getJpaPropertyMap().isEmpty());
|
||||
assertTrue(this.properties.getProperties().isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void multipleEntityManagerFactoriesDoNotOverwriteEachOther() {
|
||||
EntityManagerFactoryBuilder factory = new EntityManagerFactoryBuilder(
|
||||
new HibernateJpaVendorAdapter(), this.properties, null);
|
||||
LocalContainerEntityManagerFactoryBean result1 = factory
|
||||
.dataSource(this.dataSource1)
|
||||
.properties(Collections.singletonMap("foo", "spam")).build();
|
||||
assertFalse(result1.getJpaPropertyMap().isEmpty());
|
||||
LocalContainerEntityManagerFactoryBean result2 = factory
|
||||
.dataSource(this.dataSource2).build();
|
||||
assertTrue(result2.getJpaPropertyMap().isEmpty());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -773,7 +773,6 @@ public class SpringApplication {
|
|||
*/
|
||||
protected void afterRefresh(ConfigurableApplicationContext context,
|
||||
ApplicationArguments args) {
|
||||
afterRefresh(context, args.getSourceArgs());
|
||||
callRunners(context, args);
|
||||
}
|
||||
|
||||
|
|
@ -810,17 +809,6 @@ public class SpringApplication {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Called after the context has been refreshed.
|
||||
* @param context the application context
|
||||
* @param args the application arguments
|
||||
* @deprecated in 1.3 in favor of
|
||||
* {@link #afterRefresh(ConfigurableApplicationContext, ApplicationArguments)}
|
||||
*/
|
||||
@Deprecated
|
||||
protected void afterRefresh(ConfigurableApplicationContext context, String[] args) {
|
||||
}
|
||||
|
||||
private void handleRunFailure(ConfigurableApplicationContext context,
|
||||
SpringApplicationRunListeners listeners, Throwable exception) {
|
||||
if (logger.isErrorEnabled()) {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2012-2015 the original author or authors.
|
||||
* Copyright 2012-2016 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
@ -313,18 +313,6 @@ public class SpringApplicationBuilder {
|
|||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Flag to indicate the startup banner should be printed.
|
||||
* @param showBanner the flag to set. Default true.
|
||||
* @return the current builder
|
||||
* @deprecated Since 1.3.0 in favor of {@link #bannerMode}
|
||||
*/
|
||||
@Deprecated
|
||||
public SpringApplicationBuilder showBanner(boolean showBanner) {
|
||||
this.application.setShowBanner(showBanner);
|
||||
return this;
|
||||
}
|
||||
|
||||
public SpringApplicationBuilder bannerMode(Banner.Mode bannerMode) {
|
||||
this.application.setBannerMode(bannerMode);
|
||||
return this;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2012-2015 the original author or authors.
|
||||
* Copyright 2012-2016 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
@ -69,20 +69,6 @@ public abstract class LoggingSystem {
|
|||
*/
|
||||
public void initialize(LoggingInitializationContext initializationContext,
|
||||
String configLocation, LogFile logFile) {
|
||||
initialize(configLocation, logFile);
|
||||
}
|
||||
|
||||
/**
|
||||
* Fully initialize the logging system.
|
||||
* @param configLocation a log configuration location or {@code null} if default
|
||||
* initialization is required
|
||||
* @param logFile the log output file that should be written or {@code null} for
|
||||
* console only output
|
||||
* @deprecated since 1.3 in favor of
|
||||
* {@link #initialize(LoggingInitializationContext, String, LogFile)}
|
||||
*/
|
||||
@Deprecated
|
||||
public void initialize(String configLocation, LogFile logFile) {
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2012-2014 the original author or authors.
|
||||
* Copyright 2012-2016 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
@ -195,7 +195,7 @@ public class LevelRemappingAppender extends AppenderBase<ILoggingEvent> {
|
|||
@Override
|
||||
@Deprecated
|
||||
public Map<String, String> getMdc() {
|
||||
return this.event.getMdc();
|
||||
return this.event.getMDCPropertyMap();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2012-2015 the original author or authors.
|
||||
* Copyright 2012-2016 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
@ -499,11 +499,6 @@ public class LoggingApplicationListenerTests {
|
|||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initialize(String configLocation, LogFile logFile) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLogLevel(String loggerName, LogLevel level) {
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue