0.0
No release in over 3 years
Connects LegionIO to MongoDB
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Runtime

>= 1.4.9
>= 1.4.17
>= 1.2.1
~> 2.19
>= 1.3.11
 Project Readme

lex-mongodb

LegionIO extension connecting LegionIO to MongoDB. Provides runners for document operations and collection management.

Installation

Add to your Gemfile:

gem 'lex-mongodb'

Standalone Client Usage

require 'legion/extensions/mongodb'

client = Legion::Extensions::Mongodb::Client.new(
  uri: 'mongodb://localhost:27017',
  database: 'myapp'
)

# Insert a document
client.insert_one(collection: 'users', document: { name: 'Jane Doe', role: 'admin' })

# Find documents
result = client.find(collection: 'users', filter: { role: 'admin' })
puts result[:result]

# Insert multiple documents
client.insert_many(
  collection: 'logs',
  documents: [{ event: 'login' }, { event: 'logout' }]
)

# Update a document
client.update_one(
  collection: 'users',
  filter: { name: 'Jane Doe' },
  update: { role: 'superadmin' }
)

# Delete a document
client.delete_one(collection: 'users', filter: { name: 'Jane Doe' })

# Count documents matching a filter
result = client.count(collection: 'users', filter: { role: 'admin' })
puts result[:result]

# List collections
result = client.list_collections
puts result[:result]

# Create a collection
client.create_collection(collection: 'events')

# Drop a collection
client.drop_collection(collection: 'events')

# Get collection stats
result = client.collection_stats(collection: 'users')
puts result[:result]

Configuration

Setting Default Description
uri mongodb://127.0.0.1:27017 MongoDB connection URI
database legion Default database name

License

MIT