diff options
author | Steve Smokowski <ss835w@att.com> | 2017-02-09 15:59:56 -0500 |
---|---|---|
committer | Steve Smokowski <ss835w@att.com> | 2017-02-09 16:00:12 -0500 |
commit | b40a52e5b2c8aaae975bed054408c39f4e3fd0db (patch) | |
tree | 49f283feecec7a99ffcd5c2f6003772191947642 /logging-api/src/main/java/org/openecomp/cl/api/LogFields.java | |
parent | 6ce9b69309b1a180431b51c83ff022da432283bd (diff) |
Initial OpenEcomp A&AI Logging Service commit
Change-Id: Ie67c5746c2aeafc0fa4318b5ba7ef8af1b3a2eda
Signed-off-by: Steve Smokowski <ss835w@att.com>
Diffstat (limited to 'logging-api/src/main/java/org/openecomp/cl/api/LogFields.java')
-rw-r--r-- | logging-api/src/main/java/org/openecomp/cl/api/LogFields.java | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/logging-api/src/main/java/org/openecomp/cl/api/LogFields.java b/logging-api/src/main/java/org/openecomp/cl/api/LogFields.java new file mode 100644 index 0000000..87b3f3f --- /dev/null +++ b/logging-api/src/main/java/org/openecomp/cl/api/LogFields.java @@ -0,0 +1,84 @@ +/*- + * ============LICENSE_START======================================================= + * Common Logging Library + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * 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. + * ============LICENSE_END========================================================= + */ + +package org.openecomp.cl.api; + +import java.util.HashMap; +import java.util.Map; + +public class LogFields { + + /** Map of field names to values. */ + private Map<Integer, String> fields = new HashMap<Integer, String>(); + + /** + * Retrieve the contents of the specified field entry. + * + * @param field + * - The field to retrieve the value for. + * + * @return - The value associated with the specified field, or null if there + * is no such entry. + */ + public String getField(Enum field) { + return fields.get(field.ordinal()); + } + + /** + * Assigns a value to a specific field. + * + * @param field + * - The field to assign a value to. + * @param value + * - The value to assign to the field. + * + * @return - The {@link LogFields} object (this is useful for parameter + * chaining. + */ + public LogFields setField(Enum field, String value) { + fields.put(field.ordinal(), value); + return this; + } + + /** + * Assigns a value to a specific field. + * + * @param field - The field to assign a value to. + * @param value - The value to assign to the field. + * + * @return - The {@link LogFields} object (this is useful for parameter + * chaining. + */ + public LogFields setField(Enum field, int value) { + fields.put(field.ordinal(), String.valueOf(value)); + return this; + } + + /** + * Determines whether or not a value has been assigned to a particular field. + * + * @param field - The field to be checked. + * + * @return - true if an entry exists for the specified field, false otherwise. + */ + public boolean fieldIsSet(Enum field) { + return fields.containsKey(field.ordinal()) && (fields.get(field.ordinal()) != null); + } +} |