---
name: "Metabase::Fact::String"
section: "3pm"
platform: "linux"
package: "libmetabase-fact-perl"
version: "0.025-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Metabase::Fact::String"
---

# Metabase::Fact::String(3pm)

fact subtype for simple strings

## NAME

Metabase::Fact::String - fact subtype for simple strings

## VERSION

version 0.025

## SYNOPSIS

```
  # defining the fact class
  package MyFact;
  use Metabase::Fact::String;
  our @ISA = qw/Metabase::Fact::String/;
  sub content_metadata {
    my $self = shift;
    return {
      'size' => [ '//num' => length $self->content ],
    };
  }
  sub validate_content {
    my $self = shift;
    $self->SUPER::validate_content;
    die __PACKAGE__ . " content length must be greater than zero\n"
      if length $self->content < 0;
  }
```

...and then...

```
  # using the fact class
  my $fact = MyFact->new(
    resource => 'RJBS/Metabase-Fact-0.001.tar.gz',
    content  => "Hello World",
  );
  $client->send_fact($fact);
```

## DESCRIPTION

Base class for facts that are just strings of text.  Strings must be characters, not bytes.

You may wish to implement a `"content_metadata"` method to generate metadata about the hash contents.

You should also implement a `"validate_content"` method to validate the structure of the hash you're given.

## BUGS

Please report any bugs or feature using the CPAN Request Tracker.   Bugs can be submitted through the web interface at  \<http://rt.cpan.org/Dist/Display.html?Queue=Metabase-Fact\>

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

## AUTHORS

- •

  David Golden \<dagolden@cpan.org\>

- •

  Ricardo Signes \<rjbs@cpan.org\>

- •

  H.Merijn Brand \<hmbrand@cpan.org\>

## COPYRIGHT AND LICENSE

This software is Copyright (c) 2016 by David Golden.

This is free software, licensed under:

```
  The Apache License, Version 2.0, January 2004
```
