Files

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> &gt; <a href="index.source.html" class="el_package">com.project.auth.application.support.audit</a> &gt; <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&lt;String, String&gt; fields) {
<span class="fc" id="L10"> public AuthAuditEvent {</span>
<span class="fc" id="L11"> Objects.requireNonNull(level, &quot;level must not be null&quot;);</span>
<span class="fc" id="L12"> Objects.requireNonNull(eventType, &quot;eventType must not be null&quot;);</span>
<span class="fc" id="L13"> Objects.requireNonNull(fields, &quot;fields must not be null&quot;);</span>
<span class="fc" id="L14"> fields = Collections.unmodifiableMap(new LinkedHashMap&lt;&gt;(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&lt;String, String&gt; 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(&quot;keyValues must contain an even number of elements&quot;);</span>
}
<span class="fc" id="L30"> LinkedHashMap&lt;String, String&gt; fields = new LinkedHashMap&lt;&gt;();</span>
<span class="fc bfc" id="L31" title="All 2 branches covered."> for (int index = 0; index &lt; keyValues.length; index += 2) {</span>
<span class="fc" id="L32"> Object key = Objects.requireNonNull(keyValues[index], &quot;field key must not be null&quot;);</span>
<span class="fc" id="L33"> Object value = Objects.requireNonNull(keyValues[index + 1], &quot;field value must not be null&quot;);</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>