Project

alfresco4r

0.0
No commit activity in last 3 years
No release in over 3 years
This gem provides the capability to ruby to interact with Alfresco CMS. This gem is providing two methods upload document to Alfresco and download/retrieve document from Alfresco.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies
 Project Readme

Alfresco4r

This gem provides the capability to ruby to interact with Alfresco CMS. This gem is providing two methods upload document to Alfresco and download/retrieve document from Alfresco.

Installation

Add this line to your application's Gemfile:

gem 'alfresco4r'

And then execute:

$ bundle

Or install it yourself as:

$ gem install alfresco4r

Usage

How to upload document to Alfresco

  1. create an hash with below keys

    options = {
    :upload_url=> 'http://replace_this_with_your_alfresco_server_name:port_number/alfresco/service/api/upload', :mime_type => 'text/plain', :full_file_name => 'test.txt', :filedata => file_data_in_binary_format, :siteid => 'siteid', :containerid => 'documentLibrary', :uploaddirectory => '/directoryname', :username=>"username", :password=>"password" }

    Explanation for each keys:

           upload_url => This is the REST based upload URL provided by Alfresco to upload document
           mime_type => Specify the MIME type for the file you are uploading
           full_file_name => Specify the file name you want to upload
           siteid => Specify the name of the site to upload the document
           containerid => Specify the space to upload
           uploaddirectory => Specify the directory name to upload
           filedata => This will have file data in binary format( eg: file_data_in_binary_format = File.open('test.txt','rb') {|f| f.read} )
           username => If the Alfresco expects the HTTP basic authentication, Specify the username here ( optional field )
           password => If the Alfresco expects the HTTP basic authentication, Specify the password here ( optional field )
    
  2. create an object of Alfresco4r::DocumentUpload by passing the options created and check the response .

    upload_obj = Alfresco4r::DocumentUpload.new(options).response

  3. Verify the status of the response object (upload_obj.status).

    Success status: if the status is "Success" your file is uploaded successfully to Alfresco. upload_obj.node will give the node ID corresponding to uploaded document. It will be something similar like '90aa0aa6-13f6-4b3f-936e-145ccc4aae53' upload_obj.filename will give the file name it uploaded to Alfresco. In case if Alfresco finds the similar file name exists already, it will rename file and provide the file name in return

    Failure status: if the status is "Failure" your file is not uploaded to Alfresco. upload_obj.message will give the description of error message.

How to download/retrieve document from Alfresco

  1. create an hash with below keys

    options = {
    :download_url=> 'http://replace_this_with_your_alfresco_server_name:port_number/alfresco/service/api/node/content/workspace/SpacesStore', :node => '90aa0aa6-13f6-4b3f-936e-145ccc4aae53', :full_file_name => 'test.txt', :username=>"username", :password=>"password" }

    Explanation for each keys:

           download_url => This is the REST based download/retrieve URL provided by Alfresco to download/retrieve document  
           node =>  node is the unique ID of the document to download/retrieve     
           full_file_name => Specify the file name you want to download/retrieve ( optional field )             
           username => If the Alfresco expects the HTTP basic authentication, Specify the username here ( optional field )
           password => If the Alfresco expects the HTTP basic authentication, Specify the password here ( optional field )
    
  2. create an object of Alfresco4r::DocumentDownload by passing the options created and check the response .

    download_obj = Alfresco4r::DocumentDownload.new(options).response

  3. Verify the status of the response object (download_obj.status).

    Success status: if the status is "Success" you can proceed to call download_obj.data_stream to stream or write to file.

    Failure status: if the status is "Failure", download_obj.message will give the description of error message.