# $Id$ # # Copyright (c) 2001-2010 NetApp, Inc., All Rights Reserved # Any use, modification, or distribution is prohibited # without prior written consent from NetApp, Inc. # ## @summary DebugCrsConfiguration ComponentState Module (auto-generated by CGT) ## @author dl-nacl-dev@netapp.com ## @status shared ## @pod here =head1 NAME NACL::CS::DebugCrsConfiguration =head1 DESCRIPTION C is a derived class of L. It represents the state of an ONTAP DebugCrsConfiguration. A related class is L, which represents access to an ONTAP DebugCrsConfiguration. =head1 ATTRIBUTES The individual pieces of data that are part of the state of the DebugCrsConfiguration element are the attributes of the DebugCrsConfiguration ComponentState. Additionally, the command_interface used to obtain the ComponentState object is also an attribute of the object. This makes it easier to obtain the component object corresponding to the CS object, using L. =over =item command_interface The command_interface with which the CS object was obtained. (Available in all CS objects regardless of requested_fields and the mode/interface) =item C<< dangling_context_age_limit >> Dangling Context Age Limit ranges from 5 to 600 Filled in for CMode CLI =item C<< threads_per_peer_cluster_maximum >> Threads per Peer Cluster Maximum ranges from 0 to 5000 Filled in for CMode CLI =item C<< simulated_communication_version >> Simulated Communication Version ranges from 0 to 1000 Filled in for CMode CLI =item C<< hold_thread_until_queue_empty >> Hold Thread Until Queue Empty possible value(s) are, true,false Filled in for CMode CLI =item C<< dangling_context_recheck_interval >> Dangling Context Recheck Interval ranges from 1 to 600 Filled in for CMode CLI =item C<< transfer_size_maximum >> Transfer Size Maximum Filled in for CMode CLI =item C<< cluster_queue_file_size >> Cluster Queue File Size Filled in for CMode CLI =item C<< data_retention_recheck_interval >> Data Retention Recheck Interval ranges from 1 to 3600 Filled in for CMode CLI =item C<< open_context_lock_attempt_timeout >> Open Context Lock Attempt Timeout ranges from 1 to 60 Filled in for CMode CLI =item C<< active_queue_files_per_stream >> Active Queue Files Per Stream ranges from 5 to 50 Filled in for CMode CLI =item C<< stream_resolve_recheck_interval >> Stream Resolve Recheck Interval ranges from 1 to 3600 Filled in for CMode CLI =item C<< baseline_file_retention_period >> Baseline File Retention Period ranges from 0 to 864000 Filled in for CMode CLI =item C<< baseline_file_retention_count >> Baseline File Retention Count ranges from 0 to 50 Filled in for CMode CLI =item C<< peer_cluster_heartbeat_interval >> Peer Cluster Heartbeat Interval ranges from 5 to 3600 Filled in for CMode CLI =item C<< queue_threshold_warning_percentage >> Queue Threshold Warning Percentage Filled in for CMode CLI =item C<< transfer_threads_maximum >> Transfer Threads Maximum ranges from 0 to 5000 Filled in for CMode CLI =item C<< dm_notification_interval >> DM Notification Interval ranges from 5 to 3600 Filled in for CMode CLI =item C<< peer_cluster_notification_interval >> Peer Cluster Notification Interval ranges from 5 to 3600 Filled in for CMode CLI =item C<< keep_sender_streams_paused >> Keep Sender Streams Paused possible value(s) are, true,false Filled in for CMode CLI =item C<< queue_file_retention_period >> Queue File Retention Period ranges from 0 to 864000 Filled in for CMode CLI =item C<< queue_file_time_limit >> Queue File Time Limit ranges from 0 to 864000 Filled in for CMode CLI =item C<< io_latency_warning_threshold >> I/O Latency Warning Threshold ranges from 5 to 600 Filled in for CMode CLI. =item C<< cps_error_count_threshold >> CPS Error Count Threshold ranges from 1 to 10 Filled in for CMode CLI. =item C<< baseline_traversal_cache_size >> Size of Baseline Traversal Cache Filled in for CMode CLI. =item C<< builder_threads_per_baseline >> Builder Threads per Baseline ranges from 0 to 100 Filled in for CMode CLI. =item C<< baseline_transfer_chunk_size >> Size of Baseline Transfer Chunk Filled in for CMode CLI. =item C<< baseline_builder_threads_maximum >> Total Threads to Build Baselines ranges from 0 to 100 Filled in for CMode CLI. =item C<< io_latency_panic_threshold >> I/O Latency Panic Threshold ranges from 120 to 600 Filled in for CMode CLI. =item C<< failed_cluster_notify_threshold >> Failed Cluster Notify Threshold ranges from 60 to 21600 Filled in for CMode CLI. =item C<< io_latency_capture_threshold >> I/O Latency Capture Threshold ranges from 60 to 600 Filled in for CMode CLI. =item C<< baseline_fetch_assert_timeout_enable >> Baseline Fetch Assert Timeout Enable possible value(s) are, true,false Filled in for CMode CLI. =item C<< baseline_fetch_max_assert_timeout >> Baseline Fetch Maximum Timeout for Assert ranges from 20 to 60 Filled in for CMode CLI. =item C<< queue_entries_for_cluster_maximum >> Queue Entries for Cluster Maximum ranges from 1 to 1000000 Filled in for CMode CLI. =item C<< queue_entries_per_stream_maximum >> Queue Entries per Stream Maximum ranges from 1 to 1000000 Filled in for CMode CLI. =item C<< op_queue_recovery_delay_limit >> Operation Queue Recovery Limit ranges from 0 to 10 Filled in for CMode CLI. =item C<< op_queue_notify_threshold >> Operation Queue Notify Threshold ranges from 1 to 120 Filled in for CMode CLI. =item C<< baseline_fetch_extra_time >> Baseline Fetch Extra Time ranges from 0 to 60 Filled in for CMode CLI. =item C<< streams_maximum >> Streams Maximum ranges from 1 to 2000 Filled in for CMode CLI. =item C<< drain_notification_threshold >> Drain Notification Threshold ranges from 1 to 10000 Filled in for CMode CLI. =item C<< op_queue_latency_threshold >> Operation Queue Latency Threshold ranges from 1 to 60 Filled in for CMode CLI. =back =cut package NACL::CS::DebugCrsConfiguration; use strict; use warnings; use Params::Validate qw(validate); use NATE::Log qw(log_global); my $Log = log_global(); my $may_enter = $Log->may_enter(); my $may_exit = $Log->may_exit(); use NACL::Exceptions::NoElementsFound qw(:try); use base 'NACL::CS::ComponentState::ONTAP'; use Class::MethodMaker [ scalar => 'dangling_context_age_limit', scalar => 'threads_per_peer_cluster_maximum', scalar => 'simulated_communication_version', scalar => 'hold_thread_until_queue_empty', scalar => 'dangling_context_recheck_interval', scalar => 'transfer_size_maximum', scalar => 'cluster_queue_file_size', scalar => 'data_retention_recheck_interval', scalar => 'open_context_lock_attempt_timeout', scalar => 'active_queue_files_per_stream', scalar => 'stream_resolve_recheck_interval', scalar => 'baseline_file_retention_period', scalar => 'baseline_file_retention_count', scalar => 'peer_cluster_heartbeat_interval', scalar => 'queue_threshold_warning_percentage', scalar => 'transfer_threads_maximum', scalar => 'dm_notification_interval', scalar => 'peer_cluster_notification_interval', scalar => 'keep_sender_streams_paused', scalar => 'queue_file_retention_period', scalar => 'queue_file_time_limit', scalar => 'io_latency_warning_threshold', scalar => 'cps_error_count_threshold', scalar => 'baseline_traversal_cache_size', scalar => 'builder_threads_per_baseline', scalar => 'baseline_transfer_chunk_size', scalar => 'baseline_builder_threads_maximum', scalar => 'io_latency_panic_threshold', scalar => 'failed_cluster_notify_threshold', scalar => 'io_latency_capture_threshold', scalar => 'baseline_fetch_assert_timeout_enable', scalar => 'baseline_fetch_max_assert_timeout', scalar => 'queue_entries_for_cluster_maximum', scalar => 'queue_entries_per_stream_maximum', scalar => 'op_queue_recovery_delay_limit', scalar => 'op_queue_notify_threshold', scalar => 'baseline_fetch_extra_time', scalar => 'streams_maximum', scalar => 'drain_notification_threshold', scalar => 'op_queue_latency_threshold', ]; =head1 METHODS =head2 fetch my $DebugCrsConfiguration_state = NACL::CS::DebugCrsConfiguration->fetch(command_interface => $ci, ...); (Class method) Discovers which elements are present and returns their state in ComponentState objects. This being a "singleton" table (i.e. one which can only have one row) is callable only in scalar context. See L for a more detailed description along with a complete explanation of the options it accepts. Uses CMode CLI. =over =item Exceptions =over =item C When there are no elements matching the query specified or elements of that type doesn't exist, then this exception will be thrown. =back =back =cut sub fetch { $Log->enter() if $may_enter; my ($pkg, @args) = @_; my @state_objs = $pkg->SUPER::fetch( @args, show_cmd => 'debug crs configuration show', choices => [ { method => '_fetch_cmode_cli', interface => 'CLI', set => 'CMode' } ], exception_text => 'No matching debug crs configuration(s) found', frontend => 'NACL::CS::DebugCrsConfiguration::fetch', is_singleton => 1 ); $Log->exit() if $may_exit; return wantarray ? @state_objs : $state_objs[0]; } sub _fetch_cmode_cli { $Log->enter() if $may_enter; my ($pkg, @args) = @_; my @state_objs = $pkg->SUPER::_fetch_cmode_cli( @args, api => 'debug_crs_configuration_show', is_singleton => 1, ); $Log->exit() if $may_exit; return @state_objs; } 1;