CHips L MINI SHELL

CHips L pro

Current Path : /proc/self/root/proc/2/root/usr/local/rvglobalsoft/rvsitebuilder7/lib/
Upload File :
Current File : //proc/self/root/proc/2/root/usr/local/rvglobalsoft/rvsitebuilder7/lib/implements.pm

package implements;
# WebSite:  http://www.rvglobalsoft.com
# Unauthorized copying is strictly forbidden and may result in severe legal action.
# Copyright (c) 2013 RV Global Soft Co.,Ltd. All rights reserved.
#
# =====YOU MUST KEEP THIS COPYRIGHTS NOTICE INTACT AND CAN NOT BE REMOVE =======
# Copyright (c) 2013 RV Global Soft Co.,Ltd. All rights reserved.
# This Agreement is a legal contract, which specifies the terms of the license
# and warranty limitation between you and RV Global Soft Co.,Ltd. and RV2Factor Product for RV Global Soft.
# You should carefully read the following terms and conditions before
# installing or using this software.  Unless you have a different license
# agreement obtained from RV Global Soft Co.,Ltd., installation or use of this software
# indicates your acceptance of the license and warranty limitation terms
# contained in this Agreement. If you do not agree to the terms of this
# Agreement, promptly delete and destroy all copies of the Software.
#
# =====  Grant of License =======
# The Software may only be installed and used on a single host machine.
#
# =====  Disclaimer of Warranty =======
# THIS SOFTWARE AND ACCOMPANYING DOCUMENTATION ARE PROVIDED "AS IS" AND
# WITHOUT WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR ANY OTHER
# WARRANTIES WHETHER EXPRESSED OR IMPLIED.   BECAUSE OF THE VARIOUS HARDWARE
# AND SOFTWARE ENVIRONMENTS INTO WHICH RV SITE BUILDER MAY BE USED, NO WARRANTY OF
# FITNESS FOR A PARTICULAR PURPOSE IS OFFERED.  THE USER MUST ASSUME THE
# ENTIRE RISK OF USING THIS PROGRAM.  ANY LIABILITY OF RV GLOBAL SOFT CO.,LTD. WILL BE
# LIMITED EXCLUSIVELY TO PRODUCT REPLACEMENT OR REFUND OF PURCHASE PRICE.
# IN NO CASE SHALL RV GLOBAL SOFT CO.,LTD. BE LIABLE FOR ANY INCIDENTAL, SPECIAL OR
# CONSEQUENTIAL DAMAGES OR LOSS, INCLUDING, WITHOUT LIMITATION, LOST PROFITS
# OR THE INABILITY TO USE EQUIPMENT OR ACCESS DATA, WHETHER SUCH DAMAGES ARE
# BASED UPON A BREACH OF EXPRESS OR IMPLIED WARRANTIES, BREACH OF CONTRACT,
# NEGLIGENCE, STRICT TORT, OR ANY OTHER LEGAL THEORY. THIS IS TRUE EVEN IF
# RV GLOBAL SOFT CO.,LTD. IS ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO CASE WILL
# RV GLOBAL SOFT CO.,LTD.'S LIABILITY EXCEED THE AMOUNT OF THE LICENSE FEE ACTUALLY PAID
# BY LICENSEE TO RV GLOBAL SOFT CO.,LTD.
# ===============================

use Cwd;
use Cwd 'realpath';
use File::Basename qw(&basename &dirname);

sub import {
    my $class = shift;
    
    my ($pkg, $filename) = caller(0);

    my ($callDir) = dirname($filename);
    
    my (@reDeclared);
    
    foreach my $base (@_) {
        eval "require $base";
        die if $@ && $@ !~ /^Can't locate .*? at \(eval /;
        eval "use $base";
        
        unless (%{"$base\::"}) {
        require Carp;
            Carp::croak("Base class package \"$base\" is empty.\n",
            "\t(Perhaps you need to 'use' the module ",
            "which defines that package first.)");
        }
        my (@baseModule);
        foreach my $func (keys %{"$base\::$_"}) {
            if (${"$base\::"}{$func} eq -1) {
                if (!defined ${"$pkg\::"}{$func}) {
                    push(@reDeclared, "$func");
                }
            }  
        }
    }
    
    if (@reDeclared) {
        my ($count) = scalar @reDeclared;
        my ($methods) = join(', ', @reDeclared);
        require Carp;
        Carp::croak("Class $pkg contains $count abstract method and must therefore be declared abstract or implement the remaining methods ($methods) ");
        
    }
}

1;

=head implements

BEGIN {
    use File::Basename qw(&basename &dirname);
    my $scriptPath = dirname(__FILE__);
    require $scriptPath . "/myInterface.pm";
}

package myPackage;
use strict;
use warnings;
use Class::Std::Utils;
{

    sub new {
        my ($class) = @_;
        RVL::logMessage('', __CONSTANT__::RVL_LOG_DEBUG);
        my ($this) = $class->SUPER::new();
        return $this;
    }
    
    sub getApiUrl {
        return 'http://api.rvglobalstore.com/usercp';   
    }
} use implements "myInterface";

=cut

Copyright 2K16 - 2K18 Indonesian Hacker Rulez