Skip to content

Commit

Permalink
fixes via intellij
Browse files Browse the repository at this point in the history
  • Loading branch information
pauldambra committed Jan 29, 2025
1 parent baac781 commit 60510dc
Show file tree
Hide file tree
Showing 4 changed files with 62 additions and 16 deletions.
37 changes: 37 additions & 0 deletions posthog/src/main/java/com/posthog/java/DefaultPostHogLogger.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
package com.posthog.java;

import java.util.logging.Level;
import java.util.logging.Logger;

public class DefaultPostHogLogger implements PostHogLogger {
private final Logger logger;

public DefaultPostHogLogger() {
this.logger = Logger.getLogger(PostHog.class.getName());
}

@Override
public void debug(String message) {
logger.fine(message);
}

@Override
public void info(String message) {
logger.info(message);
}

@Override
public void warn(String message) {
logger.warning(message);
}

@Override
public void error(String message) {
logger.severe(message);
}

@Override
public void error(String message, Throwable throwable) {
logger.log(Level.SEVERE, message, throwable);
}
}
22 changes: 9 additions & 13 deletions posthog/src/main/java/com/posthog/java/HttpSender.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@
import okhttp3.Response;

public class HttpSender implements Sender {
private String apiKey;
private String host;
private OkHttpClient client;
private int maxRetries;
private Duration initialRetryInterval;
private PostHogLogger logger;
private final String apiKey;
private final String host;
private final OkHttpClient client;
private final int maxRetries;
private final Duration initialRetryInterval;
private final PostHogLogger logger;

public static class Builder {
// required
Expand All @@ -34,6 +34,7 @@ public static class Builder {

// optional
private Duration initialRetryInterval = Duration.ofMillis(500);
private PostHogLogger logger = new DefaultPostHogLogger();

public Builder(String apiKey) {
this.apiKey = apiKey;
Expand Down Expand Up @@ -61,9 +62,6 @@ public Builder logger(PostHogLogger logger) {
}

public HttpSender build() {
if (this.logger == null) {
this.logger = new DefaultPostHogLogger();
}
return new HttpSender(this);
}
}
Expand Down Expand Up @@ -181,17 +179,15 @@ public JSONObject post(String route, String distinctId) {
response = call.execute();

if (response.isSuccessful()) {
JSONObject responseJSON = new JSONObject(response.body().string());

return responseJSON;
return new JSONObject(response.body().string());
}

if (response.code() >= 400 && response.code() < 500) {
logger.error("Error calling API: " + response.body().string());
return null;
}
} catch (IOException e) {
e.printStackTrace();
logger.error("Error calling API", e);
} finally {
if (response != null) {
response.close();
Expand Down
6 changes: 3 additions & 3 deletions posthog/src/main/java/com/posthog/java/PostHog.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@
import org.json.JSONObject;

public class PostHog {
private QueueManager queueManager;
private final QueueManager queueManager;
private Thread queueManagerThread;
private Sender sender;
private PostHogLogger logger;
private final Sender sender;
private final PostHogLogger logger;

private static abstract class BuilderBase {
protected QueueManager queueManager;
Expand Down
13 changes: 13 additions & 0 deletions posthog/src/main/java/com/posthog/java/PostHogLogger.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package com.posthog.java;

/**
* Allows you to inject a logger to the PostHog library
* We configure the DefaultPostHogLogger if one is not provided
*/
public interface PostHogLogger {
void debug(String message);
void info(String message);
void warn(String message);
void error(String message);
void error(String message, Throwable throwable);
}

0 comments on commit 60510dc

Please sign in to comment.