summaryrefslogtreecommitdiff
path: root/solenv/bin/modules/par2script/module.pm
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/bin/modules/par2script/module.pm')
-rw-r--r--solenv/bin/modules/par2script/module.pm264
1 files changed, 0 insertions, 264 deletions
diff --git a/solenv/bin/modules/par2script/module.pm b/solenv/bin/modules/par2script/module.pm
deleted file mode 100644
index d1da979bc..000000000
--- a/solenv/bin/modules/par2script/module.pm
+++ /dev/null
@@ -1,264 +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::module;
-
-use par2script::converter;
-use par2script::exiter;
-
-###########################################
-# Removing undefined gids
-# from modules
-###########################################
-
-sub remove_from_modules
-{
- my ($gid, $item) = @_;
-
- my $counter = 0;
-
- if ( ! exists($par2script::globals::searchkeys{$item}) ) { par2script::exiter::exit_program("ERROR: Unknown type \"$item\" at modules.", "remove_from_modules"); }
- my $searchkey = $par2script::globals::searchkeys{$item};
-
- my $allmodules = $par2script::globals::definitions{'Module'};
-
- my $onemodule;
- foreach $onemodule (keys %{$allmodules})
- {
- if (( exists($allmodules->{$onemodule}->{$searchkey}) ) && ( $allmodules->{$onemodule}->{$searchkey} =~ /\b$gid\b/ ))
- {
- my $infoline = "WARNING: Removing $gid because of missing definition\n";
- # print $infoline;
- push(@par2script::globals::logfileinfo, $infoline);
-
- $allmodules->{$onemodule}->{$searchkey} =~ s/\b$gid\b//;
- $allmodules->{$onemodule}->{$searchkey} =~ s/\,\s*\,/\,/;
- $allmodules->{$onemodule}->{$searchkey} =~ s/\(\s*\,\s*/\(/;
- $allmodules->{$onemodule}->{$searchkey} =~ s/\s*\,\s*\)/\)/;
-
- if (( $allmodules->{$onemodule}->{$searchkey} =~ /\(\s*\,\s*\)/ ) ||
- ( $allmodules->{$onemodule}->{$searchkey} =~ /\(\s*\)/ ))
- {
- delete($allmodules->{$onemodule}->{$searchkey});
- }
-
- $counter++;
- }
- }
-
- return $counter;
-}
-
-###########################################
-# Removing undefined gids automatically
-# from modules
-###########################################
-
-sub remove_undefined_gids_from_modules
-{
- # If assigned gids for "File", "Directory" or "Unixlink" are not defined,
- # they are automatically removed from the module
-
- foreach $item ( @par2script::globals::items_assigned_at_modules )
- {
- my $assignedgids = $par2script::globals::assignedgids{$item};
- my $definedgids = $par2script::globals::definitions{$item};
-
- my $gid;
- foreach $gid ( keys %{$assignedgids} )
- {
- if ( ! exists( $definedgids->{$gid} ))
- {
- # deleting entry in module definition
- my $number_of_removals = remove_from_modules($gid, $item);
- # decreasing counter in assignments
- if ( $assignedgids->{$gid} > $number_of_removals ) { $assignedgids->{$gid} = $assignedgids->{$gid} - $number_of_removals; }
- else { delete($assignedgids->{$gid}); }
- }
- }
- }
-}
-
-############################################
-# Getting the gid of the root module. The
-# root module has no ParentID or an empty
-# ParentID.
-############################################
-
-sub get_rootmodule_gid
-{
- my $rootgid = "";
- my $foundroot = 0;
-
- my $allmodules = $par2script::globals::definitions{'Module'};
-
- my $modulegid = "";
- foreach $modulegid (keys %{$allmodules} )
- {
- # print "Module $modulegid\n";
- # my $content = "";
- # foreach $content (sort keys %{$allmodules->{$modulegid}}) { print "\t$content = $allmodules->{$modulegid}->{$content};\n"; }
- # print "End\n";
- # print "\n";
-
- if (( ! exists($allmodules->{$modulegid}->{'ParentID'})) || ( $allmodules->{$modulegid}->{'ParentID'} eq "" ))
- {
- if ( $foundroot ) { par2script::exiter::exit_program("ERROR: More than one Root module. Only one module without ParentID or with empty ParentID allowed ($rootgid and $modulegid).", "get_rootmodule_gid"); }
- $rootgid = $modulegid;
- $foundroot = 1;
- }
- }
-
- if ( ! $foundroot ) { par2script::exiter::exit_program("ERROR: Could not find Root module. Did not find module without ParentID or with empty ParentID.", "get_rootmodule_gid"); }
-
- return $rootgid;
-}
-
-####################################
-# Adding defined items without
-# assignment to the root module.
-####################################
-
-sub add_to_root_module
-{
- # If defined gids for "File", "Directory" or "Unixlink" are not assigned,
- # they are automatically assigned to the root module
-
- my $rootmodulegid = get_rootmodule_gid();
-
- my $item;
- foreach $item ( @par2script::globals::items_assigned_at_modules )
- {
- my $assignedgids = $par2script::globals::assignedgids{$item};
- my $definedgids = $par2script::globals::definitions{$item};
-
- my $gidstring = "";
-
- # Perhaps there are already items assigned to the root
- if ( ! exists($par2script::globals::searchkeys{$item}) ) { par2script::exiter::exit_program("ERROR: Unknown type \"$item\" at modules.", "remove_from_modules"); }
- my $modulekey = $par2script::globals::searchkeys{$item};
- if ( exists($par2script::globals::definitions{'Module'}->{$rootmodulegid}->{$modulekey}) )
- {
- $gidstring = $par2script::globals::definitions{'Module'}->{$rootmodulegid}->{$modulekey};
- $gidstring =~ s/\(//;
- $gidstring =~ s/\)//;
- }
-
- my $gid;
- foreach $gid ( keys %{$definedgids} )
- {
- if ( ! exists( $assignedgids->{$gid} ))
- {
- if ( $gidstring eq "" )
- {
- $gidstring = $gid;
- }
- else
- {
- $gidstring = "$gidstring,$gid";
- }
-
- $assignedgids->{$gid} = 1;
- }
- }
-
- if ( $gidstring ne "" )
- {
- $gidstring = "\($gidstring\)";
- $par2script::globals::definitions{'Module'}->{$rootmodulegid}->{$modulekey} = $gidstring;
- }
- }
-}
-
-###################################################
-# Including \n in a very long string
-###################################################
-
-sub include_linebreaks
-{
- my ($allgidstring) = @_;
-
- my $newline = "";
- my $newlength = 0;
-
- $allgidstring =~ s/\(//;
- $allgidstring =~ s/\)//;
-
- my $allgids = par2script::converter::convert_stringlist_into_array_2($allgidstring, ",");
-
- if ( $#{$allgids} > -1 )
- {
- my $onegid;
- foreach $onegid ( @{$allgids} )
- {
- $newline = "$newline$onegid,";
- $newlength = $newlength + length($onegid) + 1; # +1 for the comma
-
- if ( $newlength > 80 )
- {
- $newline = $newline . "\n\t\t\t\t";
- $newlength = 0;
- }
- }
- }
-
- $newline =~ s/,\s*$//;
- $newline = "($newline)";
-
- return $newline;
-}
-
-###################################################
-# Shorten the lines that belong to modules, if
-# the length of the line is greater 100
-###################################################
-
-sub shorten_lines_at_modules
-{
- my $item;
- foreach $item ( @par2script::globals::items_assigned_at_modules )
- {
- if ( ! exists($par2script::globals::searchkeys{$item}) ) { par2script::exiter::exit_program("ERROR: Unknown type \"$item\" at modules.", "shorten_lines_at_modules"); }
- my $searchkey = $par2script::globals::searchkeys{$item};
-
- my $allmodules = $par2script::globals::definitions{'Module'};
-
- my $onemodule;
- foreach $onemodule (keys %{$allmodules})
- {
- if (( exists($allmodules->{$onemodule}->{$searchkey}) ) &&
- ( length($allmodules->{$onemodule}->{$searchkey}) > 100 ))
- {
- # including "\n\t\t\t\t"
- my $newstring = include_linebreaks($allmodules->{$onemodule}->{$searchkey});
- $allmodules->{$onemodule}->{$searchkey} = $newstring;
- }
- }
- }
-}
-
-1;