Skip to content

Commit

Permalink
refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
Huluvu424242 committed Jan 28, 2023
1 parent b8812d5 commit 5504f76
Show file tree
Hide file tree
Showing 8 changed files with 117 additions and 52 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,9 @@
import com.github.funthomas424242.jenkinsmonitor.jenkins.JobAbfragedaten;
import com.github.funthomas424242.jenkinsmonitor.jenkins.JobBeschreibung;
import com.github.funthomas424242.jenkinsmonitor.jenkins.JobBeschreibungen;
import com.github.funthomas424242.jenkinsmonitor.logstash.LogAppender;
import com.github.funthomas424242.jenkinsmonitor.logstash.LogStashConfigManager;
import com.github.funthomas424242.jenkinsmonitor.logstash.Loglevel;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
Expand All @@ -47,8 +49,6 @@
import static com.github.funthomas424242.jenkinsmonitor.config.ConfigurationFluentGrammar.Created;
import static com.github.funthomas424242.jenkinsmonitor.config.ConfigurationFluentGrammar.Loaded;
import static com.github.funthomas424242.jenkinsmonitor.config.ConfigurationFluentGrammar.States;
import static com.github.funthomas424242.jenkinsmonitor.logstash.LogStashConfigManager.LOG_APPENDER;
import static com.github.funthomas424242.jenkinsmonitor.logstash.LogStashConfigManager.LOG_LEVEL;

public class Configuration implements States {

Expand Down Expand Up @@ -167,28 +167,22 @@ public Loaded resetLoggerConfiguration() {


// applog.level
final String applogLevel = configurationProperties.getProperty("applog.level");
if (Arrays.asList(LOG_LEVEL).contains(applogLevel)) {
System.setProperty("applog.level", applogLevel);
}
final Loglevel applogLevel = Loglevel.fromValue(configurationProperties.getProperty("applog.level"));
System.setProperty("applog.level", Loglevel.getValueOrDefault(applogLevel));

// applog.appender
final String applogAppender = configurationProperties.getProperty("applog.appender");
if (Arrays.asList(LOG_APPENDER).contains(applogAppender)) {
System.setProperty("applog.appender", applogAppender);
}
final LogAppender applogAppender = LogAppender.fromValue(configurationProperties.getProperty("applog.appender"));
System.setProperty("applog.appender", LogAppender.getValueOrDefault(applogAppender));

// rootlog.level
final String rootlogLevel = configurationProperties.getProperty("rootlog.level");
if (Arrays.asList(LOG_LEVEL).contains(rootlogLevel)) {
System.setProperty("rootlog.level", rootlogLevel);
}
final Loglevel rootlogLevel = Loglevel.fromValue(configurationProperties.getProperty("rootlog.level"));
System.setProperty("rootlog.level", Loglevel.getValueOrDefault(rootlogLevel));


// applog.appender
final String rootlogAppender = configurationProperties.getProperty("rootlog.appender");
if (Arrays.asList(LOG_APPENDER).contains(rootlogAppender)) {
System.setProperty("rootlog.appender", rootlogAppender);
}
final LogAppender rootlogAppender = LogAppender.fromValue(configurationProperties.getProperty("rootlog.appender"));
System.setProperty("rootlog.appender", LogAppender.getValueOrDefault(rootlogAppender));

try {
// Logger Konfiguratin neu laden mit gesetzten Systemproperties
LogStashConfigManager.reloadDefaultLoggerConfiguration();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;


public class JobStatusBeschreibungen extends AbstractJobBeschreibungen<JobStatusBeschreibung> {
Expand Down Expand Up @@ -68,5 +69,17 @@ public JobStatusZeileUnten getJobStatusZeileUnten(final JobStatusBeschreibung jo
return new JobStatusZeileUnten(listIndex, jobStatusBeschreibung.getJobUrl(), this.displayLaengeUnten, jobStatusBeschreibung.getJobStatus());
}

@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
if (!super.equals(o)) return false;
JobStatusBeschreibungen that = (JobStatusBeschreibungen) o;
return displayLaengeOben == that.displayLaengeOben && displayLaengeUnten == that.displayLaengeUnten;
}

@Override
public int hashCode() {
return Objects.hash(super.hashCode(), displayLaengeOben, displayLaengeUnten);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,7 @@ public String toHTMLString() {
final String tmpJobName = this.jobName != null ? this.jobName : "unbenannt";
final String obereZeile = tmpOrderId + tmpJobName;
final int deltaOben = maxLen - obereZeile.length();
String puffer = "";
for (int i = 0; i < deltaOben; i++) {
puffer += "&nbsp;";
}
return "<div style=\"font-size:22\">[" + tmpOrderId + "] " + tmpJobName + puffer + "</div>";
return "<div style=\"font-size:22\">[" + tmpOrderId + "] " + tmpJobName + "&nbsp;".repeat(Math.max(0, deltaOben)) + "</div>";
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ public enum JobStatus {
FAILURE(Color.red, "#FF7F50"),
UNSTABLE(Color.yellow, "#FFFF00"),
ABORTED(Color.lightGray, "#C0C0C0"),
// lightGray statt gray wegen gray Anomalie!;
// lightGray statt gray wegen gray Anomalie!
OTHER(Color.lightGray, "#C0C0C0");

protected final Color color;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
package com.github.funthomas424242.jenkinsmonitor.logstash;

import java.util.Arrays;

public enum LogAppender {

CONSOLE("CONSOLE"),

FILE("FILE");

public final String appenderName;

LogAppender(final String appenderName) {
this.appenderName = appenderName;
}

public static LogAppender fromValue(final String value) {
return Arrays.stream(LogAppender.values())
.filter(logAppender -> logAppender.appenderName.equals(value))
.findAny()
.orElse(null);
}

@Override
public String toString() {
return this.appenderName;
}

public static String getValueOrDefault(final LogAppender logAppender) {
return logAppender != null ? logAppender.appenderName : CONSOLE.appenderName;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@

public class LogStashConfigManager {

public static final String[] LOG_LEVEL = {"debug", "info", "error", "log"};
public static final String[] LOG_APPENDER = {"CONSOLE", "FILE"};
private LogStashConfigManager() {
}

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package com.github.funthomas424242.jenkinsmonitor.logstash;

import java.util.Arrays;

public enum Loglevel {
DEBUG("debug"),
INFO("info"),
ERROR("error"),
LOG("log");

public final String levelName;

Loglevel(final String levelName) {
this.levelName = levelName;
}


public static Loglevel fromValue(final String value) {
return Arrays.stream(Loglevel.values())
.filter(level -> level.levelName.equals(value))
.findAny()
.orElse(null);
}

@Override
public String toString() {
return levelName;
}

public static String getValueOrDefault(final Loglevel logLevel) {
return logLevel != null ? logLevel.levelName : INFO.levelName;
}


}
Original file line number Diff line number Diff line change
Expand Up @@ -57,34 +57,30 @@ void checkEqualsAndHashCode() {
@Test
@DisplayName("Es wird eine gültige Instanz erstellt")
void valideInitialisierung() {
final JobBeschreibung jobBeschreibung
= new JobBeschreibung(new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
final JobBeschreibung jobBeschreibung = new JobBeschreibung(new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
assertNotNull(jobBeschreibung);
assertEquals(LOCALHOST_JOB_TEST_URL, jobBeschreibung.getJobUrl());
}

@Test
@DisplayName("Statusfarbe eines erfolgreichen Jobs ist grün")
void erfolgreicheJobsSindGruen() {
final JobBeschreibung jobBeschreibung = new JobBeschreibung(NAME_JOB1
, new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
assertNotNull(jobBeschreibung);
}

@Test
@DisplayName("Statusfarbe eines instabilen Jobs ist gelb")
void instabileJobsSindGelb() {
final JobBeschreibung jobBeschreibung = new JobBeschreibung(NAME_JOB1
, new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
assertNotNull(jobBeschreibung);
}

@Test
@DisplayName("Statusfarbe eines fehlerhaften Jobs ist rot")
void fehlerhafteJobsSindRot() {
final JobBeschreibung jobBeschreibung = new JobBeschreibung(NAME_JOB1
, new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
assertNotNull(jobBeschreibung);
}
// TODO
// @Test
// @DisplayName("Statusfarbe eines erfolgreichen Jobs ist grün")
// void erfolgreicheJobsSindGruen() {
// final JobBeschreibung jobBeschreibung = new JobBeschreibung(NAME_JOB1, new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
// assertNotNull(jobBeschreibung);
// }
//
// @Test
// @DisplayName("Statusfarbe eines instabilen Jobs ist gelb")
// void instabileJobsSindGelb() {
// final JobBeschreibung jobBeschreibung = new JobBeschreibung(NAME_JOB1, new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
// assertNotNull(jobBeschreibung);
// }
//
// @Test
// @DisplayName("Statusfarbe eines fehlerhaften Jobs ist rot")
// void fehlerhafteJobsSindRot() {
// final JobBeschreibung jobBeschreibung = new JobBeschreibung(NAME_JOB1, new JobAbfragedaten(LOCALHOST_JOB_TEST_URL));
// assertNotNull(jobBeschreibung);
// }

}

0 comments on commit 5504f76

Please sign in to comment.