PXP::ExtensionPointClass - Basic logic and Mandatory interfaces for L<PXP::ExtensionPoint>s.


PXP documentation Contained in the PXP distribution.

Index


Code Index:

NAME

Top

  PXP::ExtensionPointClass - Basic logic and Mandatory interfaces for L<PXP::ExtensionPoint>s.

SYNOPSIS

Top

  use base qw(PXP::ExtensionPointClass);
  ...
  # overload basic methods
  sub register {
  }

DESCRIPTION

Top

The PXP::ExtensionPointClass helps implement new ExtensionPoints. It provides basic methods and logic for dealing with Extensions.

The register method is called by Extensions to add themselves to the extension directory maintained by the ExtensionPoint.

An ExtensionPoint must overload this method, use its own data structure and check that only valid extensions try to register.

Return 'undef' if the extension is invalid.

Return the extension itself if it has been successfully added to the internal registry.


PXP documentation Contained in the PXP distribution.
package PXP::ExtensionPointClass;

use strict;
use warnings;


sub new {
  my $class = shift;
  my $self = {};

  bless $self, $class;

  return $self->init(@_);
}

sub init {
  my $self = shift;
  my $plugin = shift;

  my %opts = @_;

  return $self;
}

sub register {
  my $self = shift;
  my $extension = shift;
  my $node = shift;

  # please overload this method
  die "please redefine the register func.";
}

1;