PageRenderTime 20ms CodeModel.GetById 16ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/integrations/opennms-vmware/src/main/java/org/opennms/netmgt/collectd/vmware/cim/VmwareCimCollectionAttributeType.java

https://github.com/ajakubo1/opennms
Java | 66 lines | 29 code | 7 blank | 30 comment | 2 complexity | d2ab1052300f5ca9a932a74aab8a3f5d MD5 | raw file
 1/*******************************************************************************
 2 * This file is part of OpenNMS(R).
 3 *
 4 * Copyright (C) 2012 The OpenNMS Group, Inc.
 5 * OpenNMS(R) is Copyright (C) 1999-2012 The OpenNMS Group, Inc.
 6 *
 7 * OpenNMS(R) is a registered trademark of The OpenNMS Group, Inc.
 8 *
 9 * OpenNMS(R) is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published
11 * by the Free Software Foundation, either version 3 of the License,
12 * or (at your option) any later version.
13 *
14 * OpenNMS(R) is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with OpenNMS(R).  If not, see:
21 *      http://www.gnu.org/licenses/
22 *
23 * For more information contact:
24 *     OpenNMS(R) Licensing <license@opennms.org>
25 *     http://www.opennms.org/
26 *     http://www.opennms.com/
27 *******************************************************************************/
28
29package org.opennms.netmgt.collectd.vmware.cim;
30
31import org.opennms.netmgt.collection.api.AttributeGroupType;
32import org.opennms.netmgt.collection.api.CollectionAttribute;
33import org.opennms.netmgt.collection.api.Persister;
34import org.opennms.netmgt.collection.support.AbstractCollectionAttributeType;
35import org.opennms.netmgt.config.vmware.cim.Attrib;
36
37public class VmwareCimCollectionAttributeType extends AbstractCollectionAttributeType {
38    private final Attrib m_attribute;
39
40    public VmwareCimCollectionAttributeType(final Attrib attribute, final AttributeGroupType groupType) {
41        super(groupType);
42        m_attribute = attribute;
43    }
44
45    /**
46     * {@inheritDoc}
47     */
48    @Override
49    public void storeAttribute(final CollectionAttribute attribute, final Persister persister) {
50        if ("string".equalsIgnoreCase(m_attribute.getType())) {
51            persister.persistStringAttribute(attribute);
52        } else {
53            persister.persistNumericAttribute(attribute);
54        }
55    }
56
57    @Override
58    public String getName() {
59        return m_attribute.getAlias();
60    }
61
62    @Override
63    public String getType() {
64        return m_attribute.getType();
65    }
66}