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

com.opsmatters.newrelic.api.model.alerts.AlertViolation Maven / Gradle / Ivy

Go to download

Java client library for the New Relic REST APIs built using Jersey and Gson. The library includes over 110 operations across all of the available 35 New Relic services. It can be used by applications to automate the configuration of New Relic Monitoring, Alerting and Dashboards, but can also be used for extracting incident and metric data, executing Insights queries, and uploading plugin metrics.

There is a newer version: 1.0.12
Show newest version
/*
 * Copyright 2018 Gerald Curley
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.opsmatters.newrelic.api.model.alerts;

import com.google.gson.annotations.SerializedName;
import com.opsmatters.newrelic.api.model.IdResource;

/**
 * Represents a New Relic alert violation.  
 * 
 * @author Gerald Curley (opsmatters)
 */
public class AlertViolation extends IdResource
{
    @SerializedName("label")
    private String label;

    private Integer duration;

    @SerializedName("policy_name")
    private String policyName;

    @SerializedName("condition_name")
    private String conditionName;

    private String priority;

    @SerializedName("opened_at")
    private Long openedAt;

    @SerializedName("closed_at")
    private Long closedAt;

    private AlertEntity entity;

    private ViolationLinks links;

    /**
     * Default constructor.
     */
    public AlertViolation()
    {
    }

    /**
     * Sets the label of the violation.
     * @param label The label of the violation
     */
    public void setLabel(String label)
    {
        this.label = label;
    }

    /**
     * Returns the label of the violation.
     * @return The label of the violation
     */
    public String getLabel()
    {
        return label;
    }

    /**
     * Sets the duration of the violation.
     * @param duration The duration of the violation
     */
    public void setDuration(Integer duration)
    {
        this.duration = duration;
    }

    /**
     * Returns the duration of the violation.
     * @return The duration of the violation
     */
    public Integer getDuration()
    {
        return duration;
    }

    /**
     * Sets the policy name of the violation.
     * @param policyName The policy name of the violation
     */
    public void setPolicyName(String policyName)
    {
        this.policyName = policyName;
    }

    /**
     * Returns the policy name of the violation.
     * @return The policy name of the violation
     */
    public String getPolicyName()
    {
        return policyName;
    }

    /**
     * Sets the condition name of the violation.
     * @param conditionName The condition name of the violation
     */
    public void setConditionName(String conditionName)
    {
        this.conditionName = conditionName;
    }

    /**
     * Returns the condition name of the violation.
     * @return The condition name of the violation
     */
    public String getConditionName()
    {
        return conditionName;
    }

    /**
     * Sets the priority of the violation.
     * @param priority The priority of the violation
     */
    public void setPriority(String priority)
    {
        this.priority = priority;
    }

    /**
     * Sets the priority of the violation.
     * @param priority The priority of the violation
     */
    public void setPriority(Priority priority)
    {
        setPriority(priority.value());
    }

    /**
     * Returns the priority of the violation.
     * @return The priority of the violation
     */
    public String getPriority()
    {
        return priority;
    }
   
    /**
     * Returns the date the violation was opened.
     * @return The date the violation was opened
     */
    public Long getOpenedAt()
    {
        return openedAt;
    }

    /**
     * Returns the date the violation was closed.
     * @return The date the violation was closed
     */
    public Long getClosedAt()
    {
        return closedAt;
    }

    /**
     * Returns the entity of the violation.
     * @return The entity of the violation
     */
    public AlertEntity getEntity()
    {
        return entity;
    }

    /**
     * Returns the links of the violation.
     * @return The links of the violation
     */
    public ViolationLinks getLinks()
    {
        return links;
    }

    /**
     * Returns a string representation of the object.
     */
    @Override
    public String toString()
    {
        return "AlertViolation ["+super.toString()
            +", label="+label
            +", duration="+duration
            +", policyName="+policyName
            +", conditionName="+conditionName
            +", priority="+priority
            +", openedAt="+openedAt
            +", closedAt="+closedAt
            +", entity="+entity
            +", links="+links
            +"]";
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy