Sha256: be315032e6865cb1e635e93bf6aff561a3b613c5b74010a66fbb1f88daaa345e

Contents?: true

Size: 1.2 KB

Versions: 16

Compression:

Stored size: 1.2 KB

Contents

/**
 * @file
 * Declares the AIX file system fact resolver.
 */
#pragma once

#include "../resolvers/filesystem_resolver.hpp"
#include <map>

namespace facter { namespace facts { namespace aix {

    /**
     * Responsible for resolving AIX file system facts.
     */
    struct filesystem_resolver : resolvers::filesystem_resolver
    {
     protected:
        /**
         * Collects the DMI data.
         * @param facts The fact collection that is resolving facts.
         * @return Returns the DMI data.
         */
        virtual data collect_data(collection& facts) override;

     private:
        void collect_filesystem_data(data& result);
        void collect_mountpoint_data(data& result);
        void collect_partition_data(data& result);

    private:
        // AIX tracks filesystems as numeric IDs. We need to load up
        // the human-readable names from /etc before we can print them
        // out nicely.
        std::map<int, std::string> _filesystems;

        // This stores which partitions are mounted where, so we don't have
        // to scan the array of mountpoints when populating partitions.
        std::map<std::string, std::string> _mounts;
    };

}}}  // namespace facter::facts::aix

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
facter-3.12.2.cfacter.20181217 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.12.1.cfacter.20181031 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.11.6.cfacter.20181031 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.12.1.cfacter.20181023 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.11.5.cfacter.20181022 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.12.0.cfacter.20181004 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.12.0.cfacter.20181001 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.12.0.cfacter.20180918 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.11.4.cfacter.20180821 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.11.3.cfacter.20180716 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.11.2.cfacter.20180612 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.9.6.cfacter.20180612 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.11.2.cfacter.20180606 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.9.6.cfacter.20180606 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
facter-3.11.0.cfacter.20180319 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp
cfacter-3.11.0.rc.20180314 ext/facter/facter/lib/inc/internal/facts/aix/filesystem_resolver.hpp