Sha256: 09fa4e5889427df7f5529e3d8943a2b37c9602c7e22abb72284473edfcf6ab9a
Contents?: true
Size: 1.41 KB
Versions: 2
Compression:
Stored size: 1.41 KB
Contents
require 'Microsoft.Build.Tasks' class TaskItem include Microsoft::Build::Framework::ITaskItem attr_accessor :item_spec def initialize(str) @item_spec = str @metadata = {} end def metadata_count return @metadata.length end def metadata_names return @metadata.keys end def to_s return @item_spec end def get_metadata(metadata_name) # string => string if @metadata.has_key?(metadata_name) return @metadata[metadata_name] else return "" end end def set_metadata(metadata_name, metadata_value) # string,string => void @metadata[metadata_name] = metadata_value end def remove_metadata(metadata_name) # string => void @metadata.delete(metadata_name) if @metadata.has_key?(metadata_name) end def copy_metadata_to(destination_item) #itaskitem => void @metadata.each_pair do |key, value| original_metadata = destination_item.get_metadata(key) if original_metadata == nil or original_metadata == "" destination_item.set_metadata(key, value) end end original_item_spec = destination_item.get_metadata("OriginalItemSpec") if original_item_spec == nil or original_item_spec == "" destination_item.set_metadata("OriginalItemSpec", @item_spec) end end def clone_custom_metadata()# void => IDictionary return Hash.new().merge(@metadata) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ironbuildrake-0.1.1-ironruby | lib/task_item.rb |
ironbuildrake-0.1.0 | lib/task_item.rb |