-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Release 1.2.5. For more information about this, see the CHANGELOG
- Loading branch information
Showing
15 changed files
with
781 additions
and
333 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file modified
BIN
+136 KB
(130%)
src/doc/resources/images/jmeter_configurazione_piano_test_scenario_2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
78 changes: 78 additions & 0 deletions
78
src/main/java/it/dontesta/eventbus/application/configuration/EventHandlerAddress.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
package it.dontesta.eventbus.application.configuration; | ||
|
||
import java.util.List; | ||
|
||
/** | ||
* Questa classe rappresenta l'indirizzo dell'event handler. | ||
* | ||
* <p>Questo componente è usato per definire l'indirizzo dell'event handler e se è abilitato o meno | ||
* e usato dal converter {@code EventHandlerAddressConverter} per convertire la stringa di | ||
* configurazione in un oggetto {@code EventHandlerAddress}. | ||
* | ||
* @see it.dontesta.eventbus.application.configuration.converter.EventHandlerAddressConverter | ||
*/ | ||
public class EventHandlerAddress { | ||
|
||
private String address; | ||
|
||
private boolean enabled; | ||
|
||
/** | ||
* Costruttore di default. | ||
*/ | ||
public EventHandlerAddress(String address, boolean enabled) { | ||
this.address = address; | ||
this.enabled = enabled; | ||
} | ||
|
||
/** | ||
* Restituisce l'indirizzo dell'event handler. | ||
* | ||
* @return l'indirizzo dell'event handler | ||
*/ | ||
public String getAddress() { | ||
return address; | ||
} | ||
|
||
/** | ||
* Imposta l'indirizzo dell'event handler. | ||
* | ||
* @param address l'indirizzo dell'event handler | ||
*/ | ||
public void setAddress(String address) { | ||
this.address = address; | ||
} | ||
|
||
/** | ||
* Restituisce se l'event handler è abilitato o meno. | ||
* | ||
* @return true se l'event handler è abilitato, false altrimenti | ||
*/ | ||
public boolean isEnabled() { | ||
return enabled; | ||
} | ||
|
||
/** | ||
* Imposta se l'event handler è abilitato o meno. | ||
* | ||
* @param enabled true se l'event handler è abilitato, false altrimenti | ||
*/ | ||
public void setEnabled(boolean enabled) { | ||
this.enabled = enabled; | ||
} | ||
|
||
/** | ||
* Verifica se l'indirizzo dell'event handler esiste e se è abilitato. | ||
* | ||
* @param eventHandlerAddresses la lista degli indirizzi degli event handler | ||
* @param address l'indirizzo dell'event handler | ||
* @return true se l'indirizzo dell'event handler esiste e se è abilitato, false altrimenti | ||
*/ | ||
public static boolean isAddressAndExistsEnabled(List<EventHandlerAddress> eventHandlerAddresses, | ||
String address) { | ||
return eventHandlerAddresses.stream() | ||
.anyMatch(eventHandlerAddress -> | ||
eventHandlerAddress.getAddress().equals(address) && | ||
eventHandlerAddress.isEnabled()); | ||
} | ||
} |
40 changes: 40 additions & 0 deletions
40
...t/dontesta/eventbus/application/configuration/converter/EventHandlerAddressConverter.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
package it.dontesta.eventbus.application.configuration.converter; | ||
|
||
import it.dontesta.eventbus.application.configuration.EventHandlerAddress; | ||
import java.util.regex.Matcher; | ||
import java.util.regex.Pattern; | ||
import org.eclipse.microprofile.config.spi.Converter; | ||
|
||
/** | ||
* Questa classe implementa l'interfaccia {@code Converter} per convertire una stringa in un oggetto | ||
* {@code EventHandlerAddress}. | ||
* | ||
* <p>Questo converter è utilizzato in modo specifico per convertire le proprietà di configurazione | ||
* relative agli indirizzi degli event handler. La proprietà di configurazione si chiama | ||
* {@code app.eventbus.consumer.event.handler.addresses[i]} dove i è un numero intero che | ||
* rappresenta l'indice dell'indirizzo dell'event handler. | ||
* | ||
* <p>Il formato della stringa è il seguente: {@code address=address,enabled=enabled} dove address è | ||
* l'indirizzo dell'event handler e enabled è un flag booleano che indica se l'event handler è | ||
* abilitato o meno. | ||
*/ | ||
public class EventHandlerAddressConverter implements Converter<EventHandlerAddress> { | ||
|
||
@Override | ||
public EventHandlerAddress convert(String value) { | ||
// Definisci il pattern per estrarre i valori di address ed enabled dalle properties | ||
Pattern pattern = Pattern.compile("address=(.*),enabled=(.*)"); | ||
Matcher matcher = pattern.matcher(value.trim()); | ||
|
||
// Itera su tutte le occorrenze del pattern nella stringa value | ||
while (matcher.find()) { | ||
String address = matcher.group(1); | ||
boolean enabled = Boolean.parseBoolean(matcher.group(2)); | ||
if (address != null && !address.isEmpty()) { | ||
return (new EventHandlerAddress(address, enabled)); | ||
} | ||
} | ||
throw new IllegalArgumentException( | ||
"Failed to parse Event Handler Address {%s}".formatted(value)); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.