The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

名前

Giblog::API - Giblog API

説明

Giblog APIはHTMLコンテンツを処理をするためのAPIです。

ユーティリティメソッド

new

  my $api = Giblog::API->new(%args);

Giblog::APIオブジェクトを生成します。

Giblog::APIオブジェクトを取得するために、通常の利用では使用する必要はありません。

それぞれのコマンドクラスのapiメソッドを代わりに使用してください。

  sub build {
    my ($self, @args) = @_;
    
    # APIをコマンドクラスのapiメソッドを使って取得
    my $api = $self->api;
  }

get_proto_dir

  my $proto_dir = $api->get_proto_dir($module_name);

モジュール名を指定して、対応する「proto」ディレクトリのパスを取得します。

モジュール名が「Giblog::Command::new_foo」であった場合で、読み込まれたパスが「lib/Giblog/Command/new_foo.pm」であった場合は、「proto」ディレクトリのパスは「lib/Giblog/Command/new_foo/proto」になります。

  lib/Giblog/Command/new_foo.pm
                    /new_foo/proto

モジュールは、すでに読み込まれている必要があります。そうでない場合は、例外が発生します。

create_website

  $api->create_website($website_name, $proto_dir);

ウェブサイト名と、protoディレクトリを指定して、Webサイトを作成します。

ウェブサイト名で指定された名前を持つディレクトリが作成され、その中にprotoディレクトリの中身がコピーされます。

ウェブサイト名は、ファイル名として有効な名前を指定してください。

ウェブサイト名が、指定されない場合は、例外が発生します。

ウェブサイトがすでに存在する場合は、例外が発生します。

protoディレクトリが指定されない場合は、例外が発生します。

run_command

  $api->run_command($command_name, @args);

コマンド名を指定して、引数を与えてコマンドを実行します。

たとえば、コマンド名が「build」の場合は「Giblog::Command::build」がロードされ、このクラスの「run」メソッドが実行されます。

コマンド名に対応するコマンドクラスがロードできなかった場合は、例外が発生します。

read_config

  my $config = $api->read_config;
  

ホームディレクトリ直下にある「giblog.conf」を読み込みます。

「giblog.conf」は、Perlのソースコードとして正しく、ハッシュのリファレンスを返す必要があります。そうでない場合は、例外が発生します。

config

  my $config = $api->read_config;

「read_config」で読み込まれた設定を取得します。「read_confg」が実行される前は、未定義です。

home_dir

  my $home_dir = $api->home_dir;

Giblogのホームディレクトリを取得します。

rel_file

  my $file = $api->rel_file('foo/bar');

Giblogのホームディレクトリに、指定された相対パスを結合したパスを返します。

ホームディレクトリが設定されていない場合は、そのまま返します。

create_dir

  $api->create_dir($dir);

ディレクトリを作成します。

ディレクトリの作成に失敗した場合は、例外が発生します。

create_file

  $api->create_file($file);

ファイルを作成します。

ファイルの作成に失敗した場合は、例外が発生します。

write_to_file

slurp_file

module_rel_file

giblog

get_templates_files

データ操作メソッド

get_content

write_to_public_file

parse_giblog_syntax

parse_title

parse_description

parse_description_from_first_p_tag

parse_keywords

parse_first_img_src

wrap

add_meta_title

add_meta_description

prepare_wrap