Class: RubyScriptProvider::FileBrowseNode
- Defined in:
- lib/rubyscriptprovider.rb
Overview
describes file
Constant Summary
Constants inherited from BaseNode
Instance Attribute Summary
Attributes inherited from BaseNode
Instance Method Summary collapse
- #getChildNodes ⇒ Object
- #getPropertyValue(name) ⇒ Object
-
#initialize(url, storage, name) ⇒ FileBrowseNode
constructor
A new instance of FileBrowseNode.
- #invoke(name, args, arg2, arg3) ⇒ Object
- #parse_entry(entry) ⇒ Object
Methods inherited from BaseNode
#addPropertyChangeListener, #addVetoableChangeListener, #getIntrospection, #getPropertySetInfo, #getType, #getValue, #hasChildNodes, #hasMethod, #hasProperty, #removePropertyChangeListener, #removeVetoableChangeListener, #rename, #setPropertyValue, #setValue, #update
Methods included from Uno::UnoBase
#getImplementationId, #getTypes
Constructor Details
#initialize(url, storage, name) ⇒ FileBrowseNode
Returns a new instance of FileBrowseNode.
652 653 654 |
# File 'lib/rubyscriptprovider.rb', line 652 def initialize(url, storage, name) super(url, storage, name) end |
Instance Method Details
#getChildNodes ⇒ Object
664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 |
# File 'lib/rubyscriptprovider.rb', line 664 def getChildNodes result = [] if @storage.exists?(@url) begin file_name = @url.basename descriptions = @storage.descriptions(@url) @storage.get_method_names(@url).each do |name| display_name, description = parse_entry(descriptions[name]) display_name = name if display_name.empty? result << ScriptBrowseNode.new( @url, @storage, display_name, name, description) end rescue => e p e.to_s + "\n" + e.backtrace.join("\n") + "\n" end end return result end |
#getPropertyValue(name) ⇒ Object
683 684 685 686 687 688 689 690 691 692 |
# File 'lib/rubyscriptprovider.rb', line 683 def getPropertyValue(name) ret = false case name when "Renamable", "Deletable" ret = ! @storage.is_readonly?(@url) when "Editable" ret = @url.transient? && ! @storage.is_readonly?(@url) end return ret end |
#invoke(name, args, arg2, arg3) ⇒ Object
694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 |
# File 'lib/rubyscriptprovider.rb', line 694 def invoke(name, args, arg2, arg3) value = false begin case name when "Editable" # push yaml file too if there source = @storage.choose_file @storage.file_copy(source, @url, true) if source when "Renamable" name = args[0] name += RB_EXTENSION unless name.end_with?(RB_EXTENSION) dest = rename(name) update(name, dest) value = self when "Deletable" value = @storage.delete(@url) end rescue => e p %Q!#{e}\n#{e.backtrace.join("\n")}\n! end return [value, [0], [nil]] end |
#parse_entry(entry) ⇒ Object
656 657 658 659 660 661 662 |
# File 'lib/rubyscriptprovider.rb', line 656 def parse_entry(entry) begin return entry["name"], entry["description"] rescue return "", "" end end |