From 2f48732a18dc3bc86c0f6f9ee24c829746a0cc71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Oudot?= Date: Thu, 23 Jan 2014 14:05:18 +0000 Subject: [PATCH] Manage configuration number increment (#649) --- .../example/scripts/lemonldap-ng-cli | 6 +++++- .../lib/Lemonldap/NG/Manager/Cli.pm | 19 +++++++++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/lemonldap-ng-manager/example/scripts/lemonldap-ng-cli b/lemonldap-ng-manager/example/scripts/lemonldap-ng-cli index 11df25abe..8f94a9332 100644 --- a/lemonldap-ng-manager/example/scripts/lemonldap-ng-cli +++ b/lemonldap-ng-manager/example/scripts/lemonldap-ng-cli @@ -37,7 +37,11 @@ giveUpPrivileges( "www-data", "www-data" ); my ( $cli, $action, $method, $ret ); -$cli = new Lemonldap::NG::Manager::Cli; +$cli = new Lemonldap::NG::Manager::Cli; + +# Do not increment configuration by default +$cli->{confAccess}->{cfgNumFixed} = 1; + $action = shift(@ARGV); $method = $cli->determineMethod($action); diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Cli.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Cli.pm index c580db03c..a7bde79f1 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Cli.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Cli.pm @@ -35,7 +35,7 @@ sub new { ## @method int saveConf () # Save LemonLDAP::NG configuration # -# @return Configuration identifier. +# @return Configuration identifier sub saveConf { my ($self) = @_; @@ -43,13 +43,23 @@ sub saveConf { $self->{conf}->{cfgAuthorIP} = "127.0.0.1"; $self->{conf}->{cfgDate} = time(); - # Do not increment configuration number - $self->{conf}->{cfgNumFixed} = 1; - my $ret = $self->{confAccess}->saveConf( $self->{conf} ); return $ret; } +## @method int increment () +# Force increment of configuration number +# +# @return nothing +sub increment { + my ($self) = @_; + + $self->{confAccess}->{cfgNumFixed} = 0; + $self->{confModified} = 1; + + return; +} + ## @method string determineMethod () # Determine the method from the arguments # @@ -1033,6 +1043,7 @@ Global actions lemonldap-ng-cli help - display this message lemonldap-ng-cli info - show current configuration information + lemonldap-ng-cli increment - save current configuration into a new one Simple parameters (key/value form) ==================================