39 lines
3.5 KiB
HTML
39 lines
3.5 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>AuthAuditEvent.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">project-auth-server</a> > <a href="index.source.html" class="el_package">com.project.auth.application.support.audit</a> > <span class="el_source">AuthAuditEvent.java</span></div><h1>AuthAuditEvent.java</h1><pre class="source lang-java linenums">package com.project.auth.application.support.audit;
|
|
|
|
import java.util.Collections;
|
|
import java.util.LinkedHashMap;
|
|
import java.util.Map;
|
|
import java.util.Objects;
|
|
|
|
public record AuthAuditEvent(AuditLevel level, String eventType, Map<String, String> fields) {
|
|
|
|
<span class="fc" id="L10"> public AuthAuditEvent {</span>
|
|
<span class="fc" id="L11"> Objects.requireNonNull(level, "level must not be null");</span>
|
|
<span class="fc" id="L12"> Objects.requireNonNull(eventType, "eventType must not be null");</span>
|
|
<span class="fc" id="L13"> Objects.requireNonNull(fields, "fields must not be null");</span>
|
|
<span class="fc" id="L14"> fields = Collections.unmodifiableMap(new LinkedHashMap<>(fields));</span>
|
|
<span class="fc" id="L15"> }</span>
|
|
|
|
public static AuthAuditEvent info(String eventType, Object... keyValues) {
|
|
<span class="nc" id="L18"> return new AuthAuditEvent(AuditLevel.INFO, eventType, toFields(keyValues));</span>
|
|
}
|
|
|
|
public static AuthAuditEvent warn(String eventType, Object... keyValues) {
|
|
<span class="fc" id="L22"> return new AuthAuditEvent(AuditLevel.WARN, eventType, toFields(keyValues));</span>
|
|
}
|
|
|
|
private static Map<String, String> toFields(Object... keyValues) {
|
|
<span class="pc bpc" id="L26" title="1 of 2 branches missed."> if (keyValues.length % 2 != 0) {</span>
|
|
<span class="nc" id="L27"> throw new IllegalArgumentException("keyValues must contain an even number of elements");</span>
|
|
}
|
|
|
|
<span class="fc" id="L30"> LinkedHashMap<String, String> fields = new LinkedHashMap<>();</span>
|
|
<span class="fc bfc" id="L31" title="All 2 branches covered."> for (int index = 0; index < keyValues.length; index += 2) {</span>
|
|
<span class="fc" id="L32"> Object key = Objects.requireNonNull(keyValues[index], "field key must not be null");</span>
|
|
<span class="fc" id="L33"> Object value = Objects.requireNonNull(keyValues[index + 1], "field value must not be null");</span>
|
|
<span class="fc" id="L34"> fields.put(key.toString(), value.toString());</span>
|
|
}
|
|
<span class="fc" id="L36"> return fields;</span>
|
|
}
|
|
}
|
|
</pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.14.202510111229</span></div></body></html> |