diff options
author | James Meyer <james.meyer@operamail.com> | 2009-01-17 23:10:05 (GMT) |
---|---|---|
committer | James Meyer <james.meyer@operamail.com> | 2009-01-17 23:10:05 (GMT) |
commit | 676926ddca2543eb6a6bd34fe4350d1618e45b56 (patch) | |
tree | 97c428d568e852bb14284d00ceee8194e3271a80 /abs/core-testing/tweaker/bin/twk_EXAMPLE.pl | |
parent | fa3e0f88f1a55d88f522d770e0e8386efe924825 (diff) | |
parent | 100e02faeb525e8f697b0c8c6bc4a3eb2179c8b3 (diff) | |
download | linhes_pkgbuild-676926ddca2543eb6a6bd34fe4350d1618e45b56.zip linhes_pkgbuild-676926ddca2543eb6a6bd34fe4350d1618e45b56.tar.gz linhes_pkgbuild-676926ddca2543eb6a6bd34fe4350d1618e45b56.tar.bz2 |
Merge branch 'HEAD' of ssh://jams@knoppmyth.net/mount/repository/LinHES-PKGBUILD.git
Diffstat (limited to 'abs/core-testing/tweaker/bin/twk_EXAMPLE.pl')
-rwxr-xr-x | abs/core-testing/tweaker/bin/twk_EXAMPLE.pl | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/abs/core-testing/tweaker/bin/twk_EXAMPLE.pl b/abs/core-testing/tweaker/bin/twk_EXAMPLE.pl new file mode 100755 index 0000000..4fc401a --- /dev/null +++ b/abs/core-testing/tweaker/bin/twk_EXAMPLE.pl @@ -0,0 +1,134 @@ +# This is not an executable. It provides an example of how you would implement a +# Tweaker Script. For details on the functions provided by Tweaker::Script, +# such as execute_shell_command, get_environment_variable, connect_to_db, etc. +# see Tweaker/Script.pm +# +# See the corresponding EXAMPLE.tcf for the Tweak that would correspond to this script. + +# +# BEGIN EXAMPLE +# + +#!/usr/bin/perl -w + +# Copyright 2008 YOUR NAME HERE +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +use Switch; +use Tweaker::Script; +package Tweaker::Script; + +# List all the options that this script supports. Make sure it matches what's in +# the corresponding .tcf entry. +set_known_options( 'option1', 'option2', 'option3' ); + +# Try to implement the given option. +sub implement_option { + my($option) = @_; + + # If you need a subroutine that is specific to the task of implementing an option, + # define it inside the above subroutine. + sub my_subroutune { + # ... + } + + $dbconnectionstring = get_mythtv_connection_string(); + + if (connect_to_db("DBI:mysql:$dbconnectionstring")) { # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + switch ($option) { + # List all the options that this script supports. You can have as many as you like. + case "option1" { + # Perform the actions necessary to implement option1. + # You may want to call do_query, change_or_make_setting, or change_or_make_entry to make changes to the MySQL database. + # You may want to call execute_shell_command to make changes from the shell. + } + case "option2" { + # Perform the actions necessary to implement option2. + # You may want to call do_query, change_or_make_setting, or change_or_make_entry to make changes to the MySQL database. + # You may want to call execute_shell_command to make changes from the shell. + } + case "option3" { + # Perform the actions necessary to implement option3. + # You may want to call do_query, change_or_make_setting, or change_or_make_entry to make changes to the MySQL database. + # You may want to call execute_shell_command to make changes from the shell. + } + } + } else { # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + my $logger = get_logger('tweaker.script'); + $logger->error("ERROR: Unable to connect to mythconverg database"); + $logger->error("ERROR: Unable to implement option $option."); + exit -1; # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + } # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + disconnect_from_db(); # You may not have to do this. It's only when you need to change MySQL settings for MythTV. +} + +# Poll the system to see what recommendationlevel the given option has on the system. +sub poll_options { + my($option) = @_; + + # If you need a subroutine that is specific to the task of implementing an option, + # define it inside the above subroutine. + sub my_subroutune { + # ... + } + + $dbconnectionstring = get_mythtv_connection_string(); + + if (connect_to_db("DBI:mysql:$dbconnectionstring")) { # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + switch ($option) { + # List all the options that this script supports. You can have as many as you like. + case "option1" { + # Perform the actions necessary to determine a recommendation level for option1. + # You may want to call do_query to query to the MySQL database. + # You may want to call execute_shell_command to check things in the shell. + # When you're done, you can use the recommendation_level subroutine to return the + # resulting recommendation level. + } + case "option2" { + # Perform the actions necessary to determine a recommendation level for option2. + # You may want to call do_query to query to the MySQL database. + # You may want to call execute_shell_command to check things in the shell. + # When you're done, you can use the recommendation_level subroutine to return the + # resulting recommendation level. + } + case "option3" { + # Perform the actions necessary to determine a recommendation level for option3. + # You may want to call do_query to query to the MySQL database. + # You may want to call execute_shell_command to check things in the shell. + # When you're done, you can use the recommendation_level subroutine to return the + # resulting recommendation level. + } + } + } else { # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + exit -1; # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + } # You may not have to do this. It's only when you need to change MySQL settings for MythTV. + disconnect_from_db(); # You may not have to do this. It's only when you need to change MySQL settings for MythTV. +} + +# Unimplemented in 0.7 +sub check_option { + help; +} + +# Unimplemented in 0.7 +sub count_iterations { + help; +} + +process_parameters; # mandatory + +# +# END EXAMPLE +# |