BioMart::Configuration FilterTree
SummaryIncluded librariesPackage variablesSynopsisDescriptionGeneral documentationMethods
Toolbar
WebCvsRaw content
Summary
BioMart::Configuration::FilterTree
Package variables
No package variables defined.
Inherit
BioMart::Root
Synopsis
Holds a List of BioMart::FilterGroup objects.
Description
Object to further define the Filters available to the User Interface by
a Dataset. Holds a list of one or more BioMart::FilterGroup objects.
Methods
_new
No description
Code
addFilterGroupDescriptionCode
descriptionDescriptionCode
displayNameDescriptionCode
getAllFilterGroupsDescriptionCode
getFilterByNameDescriptionCode
getFilterGroupByNameDescriptionCode
getOptionByNameDescriptionCode
hideDisplayDescriptionCode
nameDescriptionCode
Methods description
addFilterGroupcode    nextTop
  Usage      : $filt->addFilterGroup($fg);
Description: adds a FilterGroup to this FilterTree. The
order of addition of each FilterGroup is maintained.
Returntype : na
Exceptions : none
Caller : caller
descriptioncodeprevnextTop
  Usage      : Arg [1] - (optional) string $description
Description: get/set for description
Returntype : string
Exceptions : none
Caller : general
displayNamecodeprevnextTop
  Usage      : Arg [1] - (optional) string $display_name
Description: get/set for display name
Returntype : string
Exceptions : none
Caller : general
getAllFilterGroupscodeprevnextTop
  Usage        :  my $groups = $filt->getAllFilterGroups; 
foreach my $group (@{$groups}) { ... }
Description : Returns a list_ref of all FilterGroups held in this
FilterTree.
Returntype : list_ref of BioMart::FilterGroup objects
Exceptions : none
Caller : caller
getFilterByNamecodeprevnextTop
  Usage        :  my $filt = $filt->getFilterByName($name);
Description : Get a specific BioMart::Filter object named by $name.
May return undef if no object is contained within
this FilterTree with the given name.
Returntype : BioMart::Filter or undef if none found with given name
Exceptions : none
Caller : caller
getFilterGroupByNamecodeprevnextTop
  Usage      : my $fg = $filt->getFilterGroupByName($name);
Description: Returns a BioMart::FilterGroup object from this
BioMart::FilterTree object, named by the given name.
If no object exists in this tree named by the given name,
this method returns undef.
Returntype : BioMart::FilterGroup or undef if none found with given name.
Exceptions : none
Caller : caller
getOptionByNamecodeprevnextTop
  Usage        :  my $option = $filtT->getOptionByName($name);
Description : Get a specific BioMart::Option object named by $name.
May return undef if no object is contained within
this FilterTree with the given name.
Returntype : BioMart::Option or undef if none found with given name
Exceptions : none
Caller : caller
hideDisplaycodeprevnextTop
  Usage      : Arg [1] - (optional) string $hideDisplay
Description: get/set for hideDisplay toggle
Returntype : string
Exceptions : none
Caller : general
namecodeprevnextTop
  Usage      : my $name = $filt->name(); $filt->name($newname);
Description: sets/gets the name of the FilterTree
Returntype : string name
Exceptions : none
Caller : caller
Methods code
_newdescriptionprevnextTop
sub _new {
  my ($self, @param) = @_;
  $self->SUPER::_new(@param);

  $self->addParams(TITLES, @param);
  $self->attr('filtGs', []);
}
addFilterGroupdescriptionprevnextTop
sub addFilterGroup {
  my ($self, $filtGroup) = @_;

  my $filtGs = $self->get('filtGs');
  push @{$filtGs}, $filtGroup;
}
descriptiondescriptionprevnextTop
sub description {
  # stores description
my ($self, $value) = @_; if ($value){ $self->setParam(DESCRIPTION, $value); } return $self->getParam(DESCRIPTION);
}
displayNamedescriptionprevnextTop
sub displayName {
  # stores display name
my ($self, $value) = @_; if ($value){ $self->setParam(DISPLAYNAME, $value); } return $self->getParam(DISPLAYNAME);
}
getAllFilterGroupsdescriptionprevnextTop
sub getAllFilterGroups {
  my $self = shift;

  return $self->get('filtGs');
}
getFilterByNamedescriptionprevnextTop
sub getFilterByName {
  my ($self, $name) = @_;

  my $retFilt;

  my $filtGs = $self->get('filtGs');
  GROUP: foreach my $filtG (@{$filtGs}) {
    my $filtColls = $filtG->getAllCollections;

    foreach my $filtCol (@{$filtColls}) {
      my $filts = $filtCol->getAllFilters;

      foreach my $filt (@{$filts}) {
        if ($filt->name eq $name) {
          $retFilt = $filt;
          last GROUP;
		}
	  }
	}
  }

  return $retFilt;
}
getFilterGroupByNamedescriptionprevnextTop
sub getFilterGroupByName {
  my ($self, $name) = @_;

  my $retGroup;

  my $filtGs = $self->get('filtGs');

  foreach my $filtG (@{$filtGs}) {
    if ($filtG->name() eq $name) {
      $retGroup = $filtG;
      last;
	}
  }

  return $retGroup;
}
getOptionByNamedescriptionprevnextTop
sub getOptionByName {
  my ($self, $name) = @_;

  my $retOption;

  my $filtGs = $self->get('filtGs');
  GROUP: foreach my $filtG (@{$filtGs}) {
    my $filtColls = $filtG->getAllCollections;

    foreach my $filtCol (@{$filtColls}) {
      my $filts = $filtCol->getAllFilters;

      foreach my $filt (@{$filts}) {
	  my $ops = $filt->getAllOptions;

	  foreach my $op (@{$ops}) {
	      if ($op->name eq $name) {
		  $retOption = $op;
		  last GROUP;
	      }
	  }
      }
  }
  }
  
  return $retOption;
}

1;
}
hideDisplaydescriptionprevnextTop
sub hideDisplay {
  # stores display name
my ($self, $value) = @_; if ($value){ $self->setParam(HIDEDISPLAY, $value); } return $self->getParam(HIDEDISPLAY);
}
namedescriptionprevnextTop
sub name {
  my ($self, $newName) = @_;

  if ($newName) {
    $self->setParam(NAMEKEY, $newName);
  }
  return $self->getParam(NAMEKEY);
}
General documentation
AUTHOR - Arek Kasprzyk, Syed Haider, Richard Holland, Darin London, Damian SmedleyTop
CONTACTTop
This module is part of the BioMart project http://www.biomart.org
Questions can be posted to the mart-dev mailing list: mart-dev@ebi.ac.uk