NAME

Mo::utils::URI - Mo utilities for URI.

SYNOPSIS

use Mo::utils::URI qw(check_location check_uri check_url);

check_location($self, $key);
check_uri($self, $key);
check_url($self, $key);
check_urn($self, $key);

DESCRIPTION

Mo utilities for URI checking of data objects.

SUBROUTINES

check_location

check_location($self, $key);

Check parameter defined by $key which is valid location. Could be URL or absolute or relative path.

Put error if check isn't ok.

Returns undef.

check_uri

check_uri($self, $key);

Check parameter defined by $key which is valid URI.

Put error if check isn't ok.

Returns undef.

check_url

check_url($self, $key);

Check parameter defined by $key which is valid URL.

Put error if check isn't ok.

Returns undef.

check_urn

check_urn($self, $key);

Check parameter defined by $key which is valid URN.

Put error if check isn't ok.

Returns undef.

ERRORS

check_location():
        Parameter '%s' doesn't contain valid location.
                Value: %s

check_uri():
        Parameter '%s' doesn't contain valid URI.
                Value: %s

check_url():
        Parameter '%s' doesn't contain valid URL.
                Value: %s

check_urn():
        Parameter '%s' doesn't contain valid URN.
                Value: %s

EXAMPLE1

use strict;
use warnings;

use Mo::utils::URI qw(check_location);

my $self = {
        'key' => 'https://skim.cz',
};
check_location($self, 'key');

# Print out.
print "ok\n";

# Output:
# ok

EXAMPLE2

use strict;
use warnings;

use Error::Pure;
use Mo::utils::URI qw(check_location);

$Error::Pure::TYPE = 'Error';

my $self = {
        'key' => 'urn:isbn:9788072044948',
};
check_location($self, 'key');

# Print out.
print "ok\n";

# Output like:
# #Error [..utils.pm:?] Parameter 'key' doesn't contain valid location.

EXAMPLE3

use strict;
use warnings;

use Mo::utils::URI qw(check_uri);

my $self = {
        'key' => 'https://skim.cz',
};
check_uri($self, 'key');

# Print out.
print "ok\n";

# Output:
# ok

EXAMPLE4

use strict;
use warnings;

use Error::Pure;
use Mo::utils::URI qw(check_uri);

$Error::Pure::TYPE = 'Error';

my $self = {
        'key' => 'bad_uri',
};
check_uri($self, 'key');

# Print out.
print "ok\n";

# Output like:
# #Error [..utils.pm:?] Parameter 'key' doesn't contain valid URI.

EXAMPLE5

use strict;
use warnings;

use Mo::utils::URI qw(check_url);

my $self = {
        'key' => 'https://skim.cz',
};
check_url($self, 'key');

# Print out.
print "ok\n";

# Output:
# ok

EXAMPLE6

use strict;
use warnings;

use Error::Pure;
use Mo::utils::URI qw(check_url);

$Error::Pure::TYPE = 'Error';

my $self = {
        'key' => 'bad_uri',
};
check_uri($self, 'key');

# Print out.
print "ok\n";

# Output like:
# #Error [..utils.pm:?] Parameter 'key' doesn't contain valid URL.

EXAMPLE7

use strict;
use warnings;

use Mo::utils::URI qw(check_urn);

my $self = {
        'key' => 'urn:isbn:0451450523',
};
check_urn($self, 'key');

# Print out.
print "ok\n";

# Output:
# ok

EXAMPLE8

use strict;
use warnings;

use Error::Pure;
use Mo::utils::URI qw(check_urn);

$Error::Pure::TYPE = 'Error';

my $self = {
        'key' => 'bad_urn',
};
check_urn($self, 'key');

# Print out.
print "ok\n";

# Output like:
# #Error [..utils.pm:?] Parameter 'key' doesn't contain valid URN.

DEPENDENCIES

Data::Validate::URI, Error::Pure, Exporter, Readonly, URI.

SEE ALSO

Mo

Micro Objects. Mo is less.

Mo::utils::CSS

Mo CSS utilities.

Mo::utils::Date

Mo date utilities.

Mo::utils::Language

Mo language utilities.

Mo::utils::Email

Mo utilities for email.

Wikibase::Datatype::Utils

Wikibase datatype utilities.

REPOSITORY

https://github.com/michal-josef-spacek/Mo-utils-URI

AUTHOR

Michal Josef Špaček mailto:skim@cpan.org

http://skim.cz

LICENSE AND COPYRIGHT

© 2024 Michal Josef Špaček

BSD 2-Clause License

VERSION

0.02