// Path: ocpp-common/src/main/java/eu/chargetime/ocpp/ServerEvents.java
// public interface ServerEvents {
//   default void authenticateSession(SessionInformation information, String username, byte[] password)
//       throws AuthenticationException {}
// 
//   void newSession(UUID sessionIndex, SessionInformation information);
// 
//   void lostSession(UUID sessionIndex);
// }
// 
// Path: ocpp-v1_6-example/json_server_example/src/main/java/eu/chargetime/ocpp/jsonserverimplementation/config/ApplicationConfiguration.java
// @Configuration
// @EnableConfigurationProperties
// @Getter
// public class ApplicationConfiguration {
// 
//     @Value("${server.port}")
//     private Integer serverPort;
// }


import eu.chargetime.ocpp.JSONServer;
import eu.chargetime.ocpp.ServerEvents;
import eu.chargetime.ocpp.jsonserverimplementation.config.ApplicationConfiguration;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
package eu.chargetime.ocpp.jsonserverimplementation.server;



@Slf4j
@Component
@AllArgsConstructor
public class JsonServerImpl {

// Path: ocpp-common/src/main/java/eu/chargetime/ocpp/ServerEvents.java
// public interface ServerEvents {
//   default void authenticateSession(SessionInformation information, String username, byte[] password)
//       throws AuthenticationException {}
// 
//   void newSession(UUID sessionIndex, SessionInformation information);
// 
//   void lostSession(UUID sessionIndex);
// }
// 
// Path: ocpp-v1_6-example/json_server_example/src/main/java/eu/chargetime/ocpp/jsonserverimplementation/config/ApplicationConfiguration.java
// @Configuration
// @EnableConfigurationProperties
// @Getter
// public class ApplicationConfiguration {
// 
//     @Value("${server.port}")
//     private Integer serverPort;
// }


// Path: ocpp-v1_6-example/json_server_example/src/main/java/eu/chargetime/ocpp/jsonserverimplementation/server/JsonServerImpl.java
import eu.chargetime.ocpp.JSONServer;
import eu.chargetime.ocpp.ServerEvents;
import eu.chargetime.ocpp.jsonserverimplementation.config.ApplicationConfiguration;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;

package eu.chargetime.ocpp.jsonserverimplementation.server;



@Slf4j
@Component
@AllArgsConstructor
public class JsonServerImpl {

    private final ServerEvents serverEvents;