All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.bandwidth.sdk.model.DiversionReason Maven / Gradle / Ivy

Go to download

The official client SDK for Bandwidth's Voice, Messaging, MFA, and WebRTC APIs

There is a newer version: 13.1.3
Show newest version
package com.bandwidth.sdk.model;

import static java.util.function.Function.identity;
import static java.util.stream.Collectors.toMap;

import com.fasterxml.jackson.annotation.JsonCreator;
import java.util.Arrays;
import java.util.Map;
import lombok.Getter;

@Getter
public enum DiversionReason {
    away("away"),
    deflection("deflection"),
    do_not_disturb("do-not-disturb"),
    follow_me("follow-me"),
    no_answer("no-answer"),
    out_of_service("out-of-service"),
    time_of_day("time-of-day"),
    unavailable("unavailable"),
    unconditional("unconditional"),
    unknown("unknown"),
    user_busy("user-busy"),
    ;

    private static final Map DESERIALIZATION_MAP =
            Arrays.stream(values())
                    .collect(toMap(v -> v.name, identity()));

    private final String name;

    DiversionReason(String name) {
        this.name = name;
    }

    @JsonCreator
    public static DiversionReason resolve(String name) {
        return DESERIALIZATION_MAP.get(name.toLowerCase());
    }

    @Override
    public String toString() {
        return name;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy