class UserHelper
def self.sd_sftp_user SftpHelper.obj.connect_sftp FigNewton.sftp.mass.sftp_host,
FigNewton.sftp.mass.sftp_uname,
FigNewton.sftp.mass.sftp_key
SftpHelper.obj
end
def self.dynamo_user @dynamo_db = AWS::DynamoDB.new(access_key_id: FigNewton.dynamodb.access_key_id,
secret_access_key: FigNewton.dynamodb.secret_access_key,
region: FigNewton.dynamodb.region)
@dynamo_dbend
end
class Dynamo include Singleton def initialize
# @dynamo_db = AWS::DynamoDB.new(access_key_id: FigNewton.dynamodb.access_key_id, # secret_access_key: FigNewton.dynamodb.secret_access_key, # region: FigNewton.dynamodb.region)
@dynamo_db = AWS::DynamoDB.new(access_key_id: 'enter access key id ',
secret_access_key: 'enter secret key here,
region: 'enter region id')
end
# {'email' => 'mai@email.com', 'rollno' => 3},'name')
def get_col_values(table_name, ref_column_hash, col_name)
items = []
table = @dynamo_db.tables[table_name]
table.load_schema
rows = table.items
ref_column_hash.each do |key, value|
rows = rows.where(key.to_sym=>value)
end rows.each do |row|
items.push row.attributes[col_name]
end items
end
def get_rows(table_name, ref_column_name, ref_col_value, col_name)
items = []
table = @dynamo_db.tables[table_name]
table.load_schema
table.items.select(ref_column_name.to_sym,col_name.to_sym ) do |row|
if row.attributes[ref_column_name].to_i.equal? ref_col_value.to_i
items.push row end end items end
# returns the table object def get_table(table_name)
table = @dynamo_db.tables[table_name]
table.load_schema
table end
end
# A helper class to access information stored in S3.
class S3Helper
include Singleton
# creates the singleton object
def self.obj
S3Helper.instance
end
# Initialize the helper and get the AWS S3 object.
def initialize
# @s3_object = AWS::S3.new access_key_id: FigNewton.s3.access_key_id, # secret_access_key: FigNewton.s3.secret_access_key
end
# Read a file from an S3 bucket. # # ==== Attributes # # +fname+ - The name of the file to read from S3. # # ==== Examples # # # To read a file from an S3 bucket, call the .read_file method from # # your code in the following way: # @s3_user.read_file 'test.xml' def read_file(fname)
@s3_object.buckets[@bucket].objects[fname].read
end
end
UserHelper.sd_sftp_user.read_file('folder/test.csv')