[otrs-cvs] ImportExport/Kernel/System ImportExport.pm,1.11,1.12

cvs-log at otrs.org cvs-log at otrs.org
Tue Feb 5 19:24:01 GMT 2008


Comments:
Update of /home/cvs/ImportExport/Kernel/System
In directory lancelot:/tmp/cvs-serv3606/Kernel/System

Modified Files:
	ImportExport.pm 
Log Message:
New functionalities.

Author: mh

Index: ImportExport.pm
===================================================================
RCS file: /home/cvs/ImportExport/Kernel/System/ImportExport.pm,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** ImportExport.pm	5 Feb 2008 11:29:01 -0000	1.11
--- ImportExport.pm	5 Feb 2008 19:23:56 -0000	1.12
***************
*** 165,168 ****
--- 165,172 ----
      $Param{TemplateID} = $Self->{DBObject}->Quote( $Param{TemplateID}, 'Integer' );
  
+     # check if result is already cached
+     return $Self->{Cache}->{TemplateGet}->{ $Param{TemplateID} }
+         if $Self->{Cache}->{TemplateGet}->{ $Param{TemplateID} };
+ 
      # create sql string
      my $SQL = "SELECT id, imexport_object, imexport_format, name, valid_id, comments, "
***************
*** 193,196 ****
--- 197,203 ----
      }
  
+     # cache the result
+     $Self->{Cache}->{TemplateGet}->{ $Param{TemplateID} } = \%TemplateData;
+ 
      return \%TemplateData;
  }
***************
*** 438,442 ****
      # delete all mapping data
      for my $TemplateID ( @{ $Param{TemplateID} } ) {
!         $Self->MappingDataDelete(
              TemplateID => $TemplateID,
              UserID     => $Param{UserID},
--- 445,449 ----
      # delete all mapping data
      for my $TemplateID ( @{ $Param{TemplateID} } ) {
!         $Self->MappingDelete(
              TemplateID => $TemplateID,
              UserID     => $Param{UserID},
***************
*** 535,539 ****
  
      # get an attribute list of the object
!     my $Attributes = $Backend->AttributesGet(
          %Param,
          UserID => $Param{UserID},
--- 542,546 ----
  
      # get an attribute list of the object
!     my $Attributes = $Backend->ObjectAttributesGet(
          %Param,
          UserID => $Param{UserID},
***************
*** 766,770 ****
  
      # get an attribute list of the format
!     my $Attributes = $Backend->AttributesGet(
          %Param,
          UserID => $Param{UserID},
--- 773,777 ----
  
      # get an attribute list of the format
!     my $Attributes = $Backend->FormatAttributesGet(
          %Param,
          UserID => $Param{UserID},
***************
*** 932,940 ****
  }
  
! =item MappingDataList()
  
  return a list of mapping data ids sorted by position as array reference
  
!     my $MappingDataList = $ImportExportObject->MappingDataList(
          TemplateID => 123,
          UserID     => 1,
--- 939,947 ----
  }
  
! =item MappingList()
  
  return a list of mapping data ids sorted by position as array reference
  
!     my $MappingList = $ImportExportObject->MappingList(
          TemplateID => 123,
          UserID     => 1,
***************
*** 943,947 ****
  =cut
  
! sub MappingDataList {
      my ( $Self, %Param ) = @_;
  
--- 950,954 ----
  =cut
  
! sub MappingList {
      my ( $Self, %Param ) = @_;
  
***************
*** 968,984 ****
  
      # fetch the result
!     my @MappingDataList;
      while ( my @Row = $Self->{DBObject}->FetchrowArray() ) {
!         push @MappingDataList, $Row[0];
      }
  
!     return \@MappingDataList;
  }
  
! =item MappingDataAdd()
  
  add a new mapping data row
  
!     my $True = $ImportExportObject->MappingDataAdd(
          TemplateID => 123,
          UserID     => 1,
--- 975,991 ----
  
      # fetch the result
!     my @MappingList;
      while ( my @Row = $Self->{DBObject}->FetchrowArray() ) {
!         push @MappingList, $Row[0];
      }
  
!     return \@MappingList;
  }
  
! =item MappingAdd()
  
  add a new mapping data row
  
!     my $True = $ImportExportObject->MappingAdd(
          TemplateID => 123,
          UserID     => 1,
***************
*** 987,991 ****
  =cut
  
! sub MappingDataAdd {
      my ( $Self, %Param ) = @_;
  
--- 994,998 ----
  =cut
  
! sub MappingAdd {
      my ( $Self, %Param ) = @_;
  
***************
*** 1031,1039 ****
  }
  
! =item MappingDataDelete()
  
  delete existing mapping data rows
  
!     my $True = $ImportExportObject->MappingDataDelete(
          MappingID  => 123,
          TemplateID => 321,
--- 1038,1046 ----
  }
  
! =item MappingDelete()
  
  delete existing mapping data rows
  
!     my $True = $ImportExportObject->MappingDelete(
          MappingID  => 123,
          TemplateID => 321,
***************
*** 1043,1047 ****
      or
  
!     my $True = $ImportExportObject->MappingDataDelete(
          TemplateID => 321,
          UserID     => 1,
--- 1050,1054 ----
      or
  
!     my $True = $ImportExportObject->MappingDelete(
          TemplateID => 321,
          UserID     => 1,
***************
*** 1050,1054 ****
  =cut
  
! sub MappingDataDelete {
      my ( $Self, %Param ) = @_;
  
--- 1057,1061 ----
  =cut
  
! sub MappingDelete {
      my ( $Self, %Param ) = @_;
  
***************
*** 1080,1084 ****
  
          # rebuild mapping positions
!         $Self->MappingDataPositionRebuild(
              TemplateID => $Param{TemplateID},
              UserID     => $Param{UserID},
--- 1087,1091 ----
  
          # rebuild mapping positions
!         $Self->MappingPositionRebuild(
              TemplateID => $Param{TemplateID},
              UserID     => $Param{UserID},
***************
*** 1096,1104 ****
  }
  
! =item MappingDataUp()
  
  move an mapping data row up
  
!     my $True = $ImportExportObject->MappingDataUp(
          MappingID  => 123,
          TemplateID => 321,
--- 1103,1111 ----
  }
  
! =item MappingUp()
  
  move an mapping data row up
  
!     my $True = $ImportExportObject->MappingUp(
          MappingID  => 123,
          TemplateID => 321,
***************
*** 1108,1112 ****
  =cut
  
! sub MappingDataUp {
      my ( $Self, %Param ) = @_;
  
--- 1115,1119 ----
  =cut
  
! sub MappingUp {
      my ( $Self, %Param ) = @_;
  
***************
*** 1123,1132 ****
  
      # get mapping data list
!     my $MappingDataList = $Self->MappingDataList(
          TemplateID => $Param{TemplateID},
          UserID     => $Param{UserID},
      );
  
!     return 1 if $Param{MappingID} == $MappingDataList->[0];
  
      # quote
--- 1130,1139 ----
  
      # get mapping data list
!     my $MappingList = $Self->MappingList(
          TemplateID => $Param{TemplateID},
          UserID     => $Param{UserID},
      );
  
!     return 1 if $Param{MappingID} == $MappingList->[0];
  
      # quote
***************
*** 1164,1172 ****
  }
  
! =item MappingDataDown()
  
  move an mapping data row down
  
!     my $True = $ImportExportObject->MappingDataDown(
          MappingID  => 123,
          TemplateID => 321,
--- 1171,1179 ----
  }
  
! =item MappingDown()
  
  move an mapping data row down
  
!     my $True = $ImportExportObject->MappingDown(
          MappingID  => 123,
          TemplateID => 321,
***************
*** 1176,1180 ****
  =cut
  
! sub MappingDataDown {
      my ( $Self, %Param ) = @_;
  
--- 1183,1187 ----
  =cut
  
! sub MappingDown {
      my ( $Self, %Param ) = @_;
  
***************
*** 1191,1200 ****
  
      # get mapping data list
!     my $MappingDataList = $Self->MappingDataList(
          TemplateID => $Param{TemplateID},
          UserID     => $Param{UserID},
      );
  
!     return 1 if $Param{MappingID} == $MappingDataList->[-1];
  
      # quote
--- 1198,1207 ----
  
      # get mapping data list
!     my $MappingList = $Self->MappingList(
          TemplateID => $Param{TemplateID},
          UserID     => $Param{UserID},
      );
  
!     return 1 if $Param{MappingID} == $MappingList->[-1];
  
      # quote
***************
*** 1230,1238 ****
  }
  
! =item MappingDataPositionRebuild()
  
  rebuild the positions of a mapping list
  
!     my $True = $ImportExportObject->MappingDataPositionRebuild(
          TemplateID => 123,
          UserID     => 1,
--- 1237,1245 ----
  }
  
! =item MappingPositionRebuild()
  
  rebuild the positions of a mapping list
  
!     my $True = $ImportExportObject->MappingPositionRebuild(
          TemplateID => 123,
          UserID     => 1,
***************
*** 1241,1245 ****
  =cut
  
! sub MappingDataPositionRebuild {
      my ( $Self, %Param ) = @_;
  
--- 1248,1252 ----
  =cut
  
! sub MappingPositionRebuild {
      my ( $Self, %Param ) = @_;
  
***************
*** 1256,1260 ****
  
      # get mapping data list
!     my $MappingDataList = $Self->MappingDataList(
          TemplateID => $Param{TemplateID},
          UserID     => $Param{UserID},
--- 1263,1267 ----
  
      # get mapping data list
!     my $MappingList = $Self->MappingList(
          TemplateID => $Param{TemplateID},
          UserID     => $Param{UserID},
***************
*** 1263,1267 ****
      # update position
      my $Counter = 0;
!     for my $MappingID ( @{$MappingDataList} ) {
          $Self->{DBObject}->Do(
              SQL => "UPDATE imexport_mapping SET position = $Counter "
--- 1270,1274 ----
      # update position
      my $Counter = 0;
!     for my $MappingID ( @{$MappingList} ) {
          $Self->{DBObject}->Do(
              SQL => "UPDATE imexport_mapping SET position = $Counter "
***************
*** 1274,1277 ****
--- 1281,1378 ----
  }
  
+ =item MappingObjectAttributesGet()
+ 
+ get the attributes of an object backend as array/hash reference
+ 
+     my $Attributes = $ImportExportObject->MappingObjectAttributesGet(
+         TemplateID => 123,
+         UserID     => 1,
+     );
+ 
+ =cut
+ 
+ sub MappingObjectAttributesGet {
+     my ( $Self, %Param ) = @_;
+ 
+     # check needed stuff
+     for my $Argument (qw(TemplateID UserID)) {
+         if ( !$Param{$Argument} ) {
+             $Self->{LogObject}->Log(
+                 Priority => 'error',
+                 Message  => "Need $Argument!",
+             );
+             return;
+         }
+     }
+ 
+     # get template data
+     my $TemplateData = $Self->TemplateGet(
+         TemplateID => $Param{TemplateID},
+         UserID     => $Param{UserID},
+     );
+ 
+     # load backend
+     my $Backend = $Self->_LoadBackend(
+         Module => "Kernel::System::ImportExport::ObjectBackend::$TemplateData->{Object}",
+     );
+ 
+     return if !$Backend;
+ 
+     # get an attribute list of the object
+     my $Attributes = $Backend->MappingObjectAttributesGet(
+         %Param,
+         UserID => $Param{UserID},
+     );
+ 
+     return $Attributes;
+ }
+ 
+ =item MappingFormatAttributesGet()
+ 
+ get the attributes of an format backend as array/hash reference
+ 
+     my $Attributes = $ImportExportObject->MappingFormatAttributesGet(
+         TemplateID => 123,
+         UserID     => 1,
+     );
+ 
+ =cut
+ 
+ sub MappingFormatAttributesGet {
+     my ( $Self, %Param ) = @_;
+ 
+     # check needed stuff
+     for my $Argument (qw(TemplateID UserID)) {
+         if ( !$Param{$Argument} ) {
+             $Self->{LogObject}->Log(
+                 Priority => 'error',
+                 Message  => "Need $Argument!",
+             );
+             return;
+         }
+     }
+ 
+     # get template data
+     my $TemplateData = $Self->TemplateGet(
+         TemplateID => $Param{TemplateID},
+         UserID     => $Param{UserID},
+     );
+ 
+     # load backend
+     my $Backend = $Self->_LoadBackend(
+         Module => "Kernel::System::ImportExport::FormatBackend::$TemplateData->{Format}",
+     );
+ 
+     return if !$Backend;
+ 
+     # get an attribute list of the format
+     my $Attributes = $Backend->MappingFormatAttributesGet(
+         %Param,
+         UserID => $Param{UserID},
+     );
+ 
+     return $Attributes;
+ }
+ 
  =item _LoadBackend()
  


More information about the cvs-log mailing list