@@ -47,11 +47,11 @@ public class RollbarAppender extends AppenderBase<ILoggingEvent> {
4747 private String configProviderClassName ;
4848
4949 /**
50- * Constructor for testing purposes .
50+ * Constructor for programmatic instantiation using an existing Rollbar instance .
5151 *
5252 * @param rollbar the rollbar notifier.
5353 */
54- protected RollbarAppender (Rollbar rollbar ) {
54+ public RollbarAppender (Rollbar rollbar ) {
5555 this .rollbar = rollbar ;
5656 }
5757
@@ -61,24 +61,25 @@ public RollbarAppender() {
6161
6262 @ Override
6363 public void start () {
64-
65- ConfigProvider configProvider = ConfigProviderHelper
66- .getConfigProvider (this .configProviderClassName );
67- Config config ;
68-
69- ConfigBuilder configBuilder = withAccessToken (this .accessToken )
70- .environment (this .environment )
71- .endpoint (this .endpoint )
72- .server (new ServerProvider ())
73- .language (this .language );
74-
75- if (configProvider != null ) {
76- config = configProvider .provide (configBuilder );
77- } else {
78- config = configBuilder .build ();
64+ if (this .rollbar == null ) {
65+ ConfigProvider configProvider = ConfigProviderHelper
66+ .getConfigProvider (this .configProviderClassName );
67+ Config config ;
68+
69+ ConfigBuilder configBuilder = withAccessToken (this .accessToken )
70+ .environment (this .environment )
71+ .endpoint (this .endpoint )
72+ .server (new ServerProvider ())
73+ .language (this .language );
74+
75+ if (configProvider != null ) {
76+ config = configProvider .provide (configBuilder );
77+ } else {
78+ config = configBuilder .build ();
79+ }
80+
81+ this .rollbar = new Rollbar (config );
7982 }
80-
81- this .rollbar = new Rollbar (config );
8283 super .start ();
8384 }
8485
0 commit comments