summaryrefslogtreecommitdiff
path: root/solenv/bin/modules/par2script/undefine.pm
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/bin/modules/par2script/undefine.pm')
-rw-r--r--solenv/bin/modules/par2script/undefine.pm144
1 files changed, 0 insertions, 144 deletions
diff --git a/solenv/bin/modules/par2script/undefine.pm b/solenv/bin/modules/par2script/undefine.pm
deleted file mode 100644
index 3ffc76709..000000000
--- a/solenv/bin/modules/par2script/undefine.pm
+++ /dev/null
@@ -1,144 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org 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 Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-package par2script::undefine;
-
-use par2script::globals;
-
-##########################################################
-# Removing in the script all the gids, that are listed
-# in undefine scp files
-##########################################################
-
-sub undefine_gids
-{
- my ($parfilecontent) = @_;
-
- my $item;
- foreach $item ( @par2script::globals::allitems )
- {
- my $unitem = "Un$item";
-
- for ( my $i = 0; $i <= $#{$parfilecontent}; $i++ )
- {
- if ( ${$parfilecontent}[$i] =~ /^\s*$unitem\s*(\w+?)\s*$/ )
- {
- my $gid = $1;
- delete($par2script::globals::definitions{$item}->{$gid});
- }
- }
- }
-}
-
-##########################################################
-# Collecting all subdirectories of a specified directory
-##########################################################
-
-sub collect_children_dirs
-{
- my ($gid, $collector) = @_;
-
- my $diritem = "Directory";
- my $parentkey = "ParentID";
-
- if ( exists($par2script::globals::definitions{$diritem}) )
- {
- my $onedefinition;
-
- foreach $onedefinition (keys %{$par2script::globals::definitions{$diritem}})
- {
- if ( $par2script::globals::definitions{$diritem}->{$onedefinition}->{$parentkey} eq $gid )
- {
- push(@{$collector}, $onedefinition);
- collect_children_dirs($onedefinition, $collector);
- }
- }
- }
-}
-
-##########################################################
-# Removing in the script complete profiles.
-# This includes the Profile and its ProfileItems.
-##########################################################
-
-sub remove_complete_item
-{
- my ($item, $parfilecontent) = @_;
-
- my $removeitem = "Remove$item";
- my $dependentkey = "";
- my $collect_children = 0;
- my @gidcollector = ();
- my @dependentitems = ();
-
- if ( $item eq "Profile" )
- {
- @dependentitems = ("ProfileItem");
- $dependentkey = "ProfileID";
- }
- elsif ( $item eq "Directory" )
- {
- @dependentitems = ("File", "Shortcut", "Unixlink");
- $dependentkey = "Dir";
- $collect_children = 1;
- }
-
- for ( my $i = 0; $i <= $#{$parfilecontent}; $i++ )
- {
- if ( ${$parfilecontent}[$i] =~ /^\s*$removeitem\s*(\w+?)\s*$/ )
- {
- my $onegid = $1;
- push(@gidcollector, $onegid);
- if ( $collect_children ) { collect_children_dirs($onegid, \@gidcollector); }
-
- my $gid;
- foreach $gid (@gidcollector)
- {
- delete($par2script::globals::definitions{$item}->{$gid});
-
- # also deleting all dependent items, for example "ProfileItems" whose "ProfileID" is this "Profile"
- my $depitem;
- foreach $depitem ( @dependentitems )
- {
- if ( exists($par2script::globals::definitions{$depitem}) )
- {
- my $onedefinition;
- foreach $onedefinition (keys %{$par2script::globals::definitions{$depitem}})
- {
- if ( $par2script::globals::definitions{$depitem}->{$onedefinition}->{$dependentkey} eq $gid )
- {
- delete($par2script::globals::definitions{$depitem}->{$onedefinition});
- }
- }
- }
- }
- }
- }
- }
-}
-
-1;