Преглед изворни кода

[Docs] Added a page for the Perl client

Clinton Gormley пре 12 година
родитељ
комит
4798425da6
2 измењених фајлова са 107 додато и 3 уклоњено
  1. 1 3
      docs/community/clients.asciidoc
  2. 106 0
      docs/perl/index.asciidoc

+ 1 - 3
docs/community/clients.asciidoc

@@ -5,9 +5,7 @@
 [[community-perl]]
 === Perl
 
-* http://github.com/clintongormley/ElasticSearch.pm[ElasticSearch.pm]:
-  Perl client.
-
+See the http://www.elasticsearch.org/guide/en/elasticsearch/client/php-api/current/index.html[official Elasticsearch Perl client].
 
 [[community-python]]
 === Python

+ 106 - 0
docs/perl/index.asciidoc

@@ -0,0 +1,106 @@
+= Elasticsearch.pm
+
+== Overview
+
+Elasticsearch.pm is the official Perl API for Elasticsearch. The full
+documentation is available on https://metacpan.org/module/Elasticsearch
+and it can be installed with:
+
+[source,sh]
+------------------------------------
+cpanm Elasticsearch
+------------------------------------
+
+=== Features
+
+This client provides:
+
+* Full support for all Elasticsearch APIs
+
+* HTTP backend (currently synchronous only - Any::Event support will be added later)
+
+* Robust networking support which handles load balancing, failure detection and failover
+
+* Good defaults
+
+* Helper utilities for more complex operations, such as bulk indexing, scrolled searches and reindexing.
+
+* Logging support via Log::Any
+
+* Compatibility with the official clients for Python, Ruby, PHP and Javascript
+
+* Easy extensibility
+
+== Synopsis
+
+[source,perl]
+------------------------------------
+use Elasticsearch;
+
+# Connect to localhost:9200:
+my $e = Elasticsearch->new();
+
+# Round-robin between two nodes:
+my $e = Elasticsearch->new(
+    nodes => [
+        'search1:9200',
+        'search2:9200'
+    ]
+);
+
+# Connect to cluster at search1:9200, sniff all nodes and round-robin between them:
+my $e = Elasticsearch->new(
+    nodes    => 'search1:9200',
+    cxn_pool => 'Sniff'
+);
+
+# Index a document:
+$e->index(
+    index   => 'my_app',
+    type    => 'blog_post',
+    id      => 1,
+    body    => {
+        title   => 'Elasticsearch clients',
+        content => 'Interesting content...',
+        date    => '2013-09-24'
+    }
+);
+
+# Get the document:
+my $doc = $e->get(
+    index   => 'my_app',
+    type    => 'blog_post',
+    id      => 1
+);
+
+# Search:
+my $results = $e->search(
+    index => 'my_app',
+    body  => {
+        query => {
+            match => { title => 'elasticsearch' }
+        }
+    }
+);
+------------------------------------
+
+== Reporting issues
+
+The GitHub repository is http://github.com/elasticsearch/elasticsearch-perl
+and any issues can be reported on the issues list at
+http://github.com/elasticsearch/elasticsearch-perl/issues.
+
+== Contributing
+
+Open source contributions are welcome. Please read our
+https://github.com/elasticsearch/elasticsearch-perl/blob/master/CONTRIBUTING.asciidoc[guide to contributing].
+
+== Copyright and License
+
+This software is Copyright (c) 2013 by Elasticsearch BV.
+
+This is free software, licensed under:
+https://github.com/elasticsearch/elasticsearch-perl/blob/master/LICENSE.txt[The Apache License Version 2.0].
+
+
+