Class: IControl::Base::Enumeration

Inherits:
Object
  • Object
show all
Defined in:
lib/icontrol/base/enumeration.rb

Direct Known Subclasses

ARX::ARXStatusType, ARX::FileChangeType, ARX::FileServerType, ARX::HARoleType, ARX::PolicyScheduleIntervalType, ARX::PolicyType, ARX::ProtocolType, ARX::ProtocolVersion, ARX::VolumeType, ASM::ApplyLearningType, ASM::DynamicSessionsInUrlType, ASM::FlagState, ASM::ObjectParams::ObjectParamCategory, ASM::PolicyTemplate, ASM::ProtocolType, ASM::SeverityName, ASM::ViolationName, ASM::WebApplicationLanguage, Common::ArmedState, Common::AuthenticationMethod, Common::AvailabilityStatus, Common::DaemonStatus, Common::EnabledState, Common::EnabledStatus, Common::FileChainType, Common::HAAction, Common::HAState, Common::IPHostType, Common::ProtocolType, Common::SourcePortBehavior, Common::StatisticType, Common::TMOSModule, GlobalLB::AddressType, GlobalLB::Application::ApplicationObjectType, GlobalLB::AutoConfigurationState, GlobalLB::AvailabilityDependency, GlobalLB::DNSSECKey::KeyAlgorithm, GlobalLB::DNSSECKey::KeyType, GlobalLB::LBMethod, GlobalLB::LDNSProbeProtocol, GlobalLB::LinkWeightType, GlobalLB::MetricLimitType, GlobalLB::Monitor::IntPropertyType, GlobalLB::Monitor::StrPropertyType, GlobalLB::Monitor::TemplateType, GlobalLB::MonitorAssociationRemovalRule, GlobalLB::MonitorInstanceStateType, GlobalLB::MonitorRuleType, GlobalLB::RegionDBType, GlobalLB::RegionType, GlobalLB::ServerType, LocalLB::AddressType, LocalLB::AuthenticationMethod, LocalLB::AvailabilityStatus, LocalLB::ClientSSLCertificateMode, LocalLB::ClonePoolType, LocalLB::CompressionMethod, LocalLB::CookiePersistenceMethod, LocalLB::CredentialSource, LocalLB::EnabledStatus, LocalLB::HardwareAccelerationMode, LocalLB::HttpChunkMode, LocalLB::HttpCompressionMode, LocalLB::HttpRedirectRewriteMode, LocalLB::Klass::ClassType, LocalLB::Klass::FileFormatType, LocalLB::Klass::FileModeType, LocalLB::LBMethod, LocalLB::Monitor::IntPropertyType, LocalLB::Monitor::StrPropertyType, LocalLB::Monitor::TemplateType, LocalLB::MonitorAssociationRemovalRule, LocalLB::MonitorInstanceStateType, LocalLB::MonitorRuleType, LocalLB::MonitorStatus, LocalLB::PersistenceMode, LocalLB::ProfileContextType, LocalLB::ProfileMode, LocalLB::ProfilePersistence::PersistenceHashMethod, LocalLB::ProfileType, LocalLB::ProfileUserStatistic::UserStatisticKey, LocalLB::RAMCacheInformation::RAMCacheVaryType, LocalLB::RamCacheCacheControlMode, LocalLB::RateClass::DirectionType, LocalLB::RateClass::DropPolicyType, LocalLB::RateClass::QueueType, LocalLB::RateClass::UnitType, LocalLB::RtspProxyType, LocalLB::SSLOption, LocalLB::ServerSSLCertificateMode, LocalLB::ServiceDownAction, LocalLB::SessionStatus, LocalLB::SnatType, LocalLB::TCPCongestionControlMode, LocalLB::TCPOptionMode, LocalLB::UncleanShutdownMode, LocalLB::VirtualAddressStatusDependency, LocalLB::VirtualServer::VirtualServerCMPEnableMode, LocalLB::VirtualServer::VirtualServerType, Management::ChangeControl::InstanceFormatType, Management::ChangeControl::InstanceVariableType, Management::DebugLevel, Management::EventNotification::EventDataType, Management::EventSubscription::AuthenticationMode, Management::EventSubscription::EventType, Management::EventSubscription::ObjectType, Management::EventSubscription::SubscriptionStatusCode, Management::KeyCertificate::CertificateType, Management::KeyCertificate::KeyType, Management::KeyCertificate::ManagementModeType, Management::KeyCertificate::SecurityType, Management::KeyCertificate::ValidityType, Management::LDAPPasswordEncodingOption, Management::LDAPSSLOption, Management::LDAPSearchMethod, Management::LDAPSearchScope, Management::OCSPDigestMethod, Management::Provision::ProvisionLevel, Management::SNMPConfiguration::AuthType, Management::SNMPConfiguration::DiskCheckType, Management::SNMPConfiguration::LevelType, Management::SNMPConfiguration::ModelType, Management::SNMPConfiguration::PrefixType, Management::SNMPConfiguration::PrivacyProtocolType, Management::SNMPConfiguration::SinkType, Management::SNMPConfiguration::TransportType, Management::SNMPConfiguration::ViewType, Management::UserManagement::UserRole, Management::ZoneType, Networking::ARP::NDPState, Networking::FilterAction, Networking::FlowControlType, Networking::ISessionLocalInterface::NatSourceAddress, Networking::ISessionPeerDiscovery::DiscoveryMode, Networking::ISessionPeerDiscovery::FilterMode, Networking::ISessionRemoteInterface::NatSourceAddress, Networking::ISessionRemoteInterface::OriginState, Networking::Interfaces::MediaType, Networking::LearningMode, Networking::MediaStatus, Networking::MemberTagType, Networking::MemberType, Networking::PhyMasterSlaveMode, Networking::ProfileWCCPGRE::WCCPGREForwarding, Networking::RouteEntryType, Networking::STPInstance::PathCostType, Networking::STPLinkType, Networking::STPModeType, Networking::STPRoleType, Networking::STPStateType, Networking::SelfIPPortLockdown::AllowMode, Networking::Trunk::DistributionHashOption, Networking::Trunk::LACPTimeoutOption, Networking::Trunk::LinkSelectionPolicy, Networking::Tunnel::TunnelDirection, Networking::VLANGroup::VLANGroupTransparency, System::CPUMetricType, System::ConfigSync::ConfigExcludeComponent, System::ConfigSync::ConfigIncludeComponent, System::ConfigSync::LoadMode, System::ConfigSync::SaveMode, System::ConfigSync::SyncMode, System::Disk::RAIDStatus, System::Failover::FailoverMode, System::Failover::FailoverState, System::FanMetricType, System::HardwareType, System::PSMetricType, System::Services::ServiceAction, System::Services::ServiceStatusType, System::Services::ServiceType, System::Statistics::GtmIQueryState, System::Statistics::GtmPathStatisticObjectType, System::TemperatureMetricType

Class Method Summary collapse

Class Method Details

.from_soap(value) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
# File 'lib/icontrol/base/enumeration.rb', line 5

def from_soap(value)
  
  # WorkArround when there are two  values with the same key (even if this one is an attribute) the hash contains an array of values, 
  # instead of just one value. In this case we choose the one that does not starts with iControl (cause this usually happends when
  # type clashes with the attribute class type) this happends when calling IControl::LocalLB::Pool#monitor_association for example

  value = value.find { |i| i =~ /^[^iControl].*/ } if value.respond_to?(:find)

  return nil unless value
  return class_eval "#{self.name}::#{[*value].last}"
end