/*
 * Copyright (C) 2017 the original author or authors.
 *
 * This file is part of jBB Application Project.
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  You may obtain a copy of the License at
 *        http://www.apache.org/licenses/LICENSE-2.0
 */

package org.jbb.system.api.cache;

import com.google.common.collect.Lists;

import org.hibernate.validator.constraints.NotBlank;

import java.time.Duration;
import java.util.List;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;

import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
public abstract class HazelcastSettings implements CacheProviderSettings {
    @NotNull
    private List<String> members = Lists.newArrayList();

    @NotBlank
    private String groupName;

    @NotBlank
    private String groupPassword;

    @NotNull
    private Duration connectionTimeout;

    @NotNull
    private Duration connectionAttemptPeriod;

    @Min(1)
    private int connectionAttemptLimit;
}

@@ -1010,10 +1010,80 @@
 tLimit;%0A
+%0A    @Override%0A    public abstract CacheProvider getCacheProvider();%0A%0A
 %7D%0A

fix pmd violation