1.0.8 • Published 10 years ago

solr-hyperquest-client v1.0.8

Weekly downloads
4
License
MIT
Repository
github
Last release
10 years ago

solr-hyperquest-client

Build Status Coverage Status Dependency Status

NPM

Build and used for a real world application (under heavy development). This client is also used for an up coming waterline adapter sails-solr.

Features

Solr support

Installation

npm install solr-hyperquest-client --save

Solr kick start

node_modules/solr-hyperquest-client/bin/install-solr.sh

Usage

// Load dependency
var Solr = require('solr-hyperquest-client');

// Create a client
var client = new Solr.Client({
    host: 'localhost',
    port: '8983',
    instance: 'solr',
    core: 'schemaless'
});

// Create a solr core (optional you take complete control managing solr)
client.coreCreate({
        action: 'CREATE',
        name: 'schemaless',
        loadOnStartup: true,
        instanceDir: 'schemaless',
        configSet: 'data_driven_schema_configs',
        config: 'solrconfig.xml',
        schema: 'schema.xml',
        dataDir: 'data'
    },
    function(err, data) {
        if (err) {
            console.log(err);
        } else {
            console.log('Solr response:', response);
        }
    });

// Add a new document
client.add({name: 'foo'},function(err,response){
   if(err){
      console.log(err);
   }else{
      console.log('Solr response:', response);
   }
});

// Get the new document
client.find('q=foo',function(err, response) {
   if(err){
      console.log(err);
   }else{
      console.log('Solr response:', response);
   }
});

Query builder (ORM)

inspired by waterline

var Solr = require('solr-hyperquest-client');
var Query = Solr.Query;

var client = new Solr.Client({
    host: 'localhost',
    port: '8983',
    instance: 'solr',
    core: 'schemaless'
});

var query = new Query({
    where: {
        name: 'foo'
    },
    skip: 0,
    limit: 10,
    sort: 'name DESC',
    select: ['name']
});

client.find(query.queryUri, function(err, response) {
   if(err){
      console.log(err);
   }else{
      console.log('Solr response:', response);
   }
});

Documentation

coming soon...

Testing

make test

TODO's

  1. add more tests
  2. write documentation

Contributing

  1. Fork it ( https://github.com/sajov/solr-hyperquest-client/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request
1.0.8

10 years ago

1.0.7

10 years ago

1.0.6

10 years ago

1.0.5

10 years ago

1.0.4

10 years ago

1.0.3

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago