Welcome To Our Shell

Mister Spy & Souheyl Bypass Shell

Current Path : /var/www/web-klick.de/dsh/50_dev2017/1300__perllib/Cursor/

Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
Upload File :
Current File : /var/www/web-klick.de/dsh/50_dev2017/1300__perllib/Cursor/xmlfile.pm

package Cursor::xmlfile;

#  $Author: gabriel $
#  $Revision: 1.1 $
#  $Date: 2007/06/04 09:07:58 $
#  $Log: xmlfile.pm,v $
#  Revision 1.1  2007/06/04 09:07:58  gabriel
#  Initial
#

use strict;
use vars qw(@ISA);
use Cursor::buffered_cursor;
use FileHandle;
@ISA = qw(Cursor::buffered_cursor);

#   Cursor, der eine xml-Datei in sinnvolle Einheiten zerlegt.
#   Aufgespalten wird jeweils an einer schliessenden eckigen Klammer.


sub new {

   my $class = shift;
   my $self  = {};
   $self->{'FILE'}        = shift;
   $self->{'BLOCKLAENGE'} = shift;
   if (!($self->{'BLOCKLAENGE'})) {
      $self->{'BLOCKLAENGE'} = 30;
   }
   bless($self,$class);
   return($self);

}

#**********************************************************************

sub restart1 {

   my $self = shift;
   if ($self->{'FILEHANDLE'}) {
      $self->{'FILEHANDLE'}->close();
   }
   if ($self->{'TEXT'}) {
      delete($self->{'TEXT'});
   }
   $self->{'FILEHANDLE'} = FileHandle->new("<".$self->{'FILE'});
   if (!($self->{'FILEHANDLE'})) {
      $self->{'TEXT'}    = $self->{'FILE'};
      $self->{'ZAEHLER'} = 0;
   }

}

#***********************************************************************

sub next1 {

   my $self = shift;

   my $zaehler = 0;
   my $ende    = 1;   #   Moeglichkeit des Schleifenabbruchs
   my $zeichen; my $zeile;
   if ($self->{'FILEHANDLE'}) {
      while (0 == 0) {
         $zaehler = $zaehler + 1;
         $zeichen = $self->{'FILEHANDLE'}->getc();
         $zeile = $zeile . $zeichen;
         if ($zeichen eq "\<") { $ende = 0; }
         if ($zeichen eq "\>") { $ende = 1; }
         last if ($zaehler > $self->{'BLOCKLAENGE'} and $ende);
      }
   } else {
      $zeile = substr($self->{'TEXT'},0,$self->{'BLOCKLAENGE'});
      $self->{'TEXT'} = substr($self->{'TEXT'},$self->{'BLOCKLAENGE'}+1);
      if ($self->{'TEXT'} =~ /^(.*?\>)(.*)$/s) {
         $zeile = $zeile . $1;
         $self->{'TEXT'} = $2;
      }
   }
   return(undef) if (length($zeile) == 0);
   $zeile =~ s/\n//gs;
   return($zeile);

}

#**********************************************************************

1;

bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped)
Email: contact@elmoujehidin.net bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped) Email: contact@elmoujehidin.net