1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache license, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the license for the specific language governing permissions and 15 * limitations under the license. 16 */ 17 package org.apache.logging.log4j.catalog.api; 18 19 import java.io.Serializable; 20 21 /** 22 * Attribute used in an event 23 */ 24 public class EventAttribute implements Serializable { 25 26 private static final long serialVersionUID = 6234766849875135836L; 27 private String name; 28 29 private Boolean isRequired; 30 31 public EventAttribute() { 32 } 33 34 public EventAttribute(String name, boolean isRequired) { 35 this.name = name; 36 this.isRequired = isRequired; 37 } 38 39 /** 40 * The name of the attribute. 41 * @return the name of the Attribute. 42 */ 43 public String getName() { 44 return name; 45 } 46 47 /** 48 * Set the name of the Attribute. 49 * @param attributeName the Attribute's name. 50 */ 51 public void setName(String attributeName) { 52 this.name = attributeName; 53 } 54 55 /** 56 * Indicates whether the attribute is required. 57 * @return true if the Attribute is required, false otherwise. 58 */ 59 public Boolean isRequired() { 60 return isRequired; 61 } 62 63 /** 64 * Sets whether the attribute is required. 65 * @param required true if the attribute is required, false otherwise. 66 */ 67 public void setRequired(Boolean required) { 68 isRequired = required; 69 } 70 }