Class: Mondrian::OLAP::Schema::UserDefinedFunction
- Inherits:
-
Mondrian::OLAP::SchemaElement
- Object
- Mondrian::OLAP::SchemaElement
- Mondrian::OLAP::Schema::UserDefinedFunction
- Includes:
- ScriptElements
- Defined in:
- lib/mondrian/olap/schema_udf.rb
Defined Under Namespace
Classes: RubyUdfBase
Instance Attribute Summary
Attributes inherited from Mondrian::OLAP::SchemaElement
Instance Method Summary collapse
Methods inherited from Mondrian::OLAP::SchemaElement
attributes, content, data_dictionary_names, elements, #initialize, #to_xml, #xml
Constructor Details
This class inherits a constructor from Mondrian::OLAP::SchemaElement
Instance Method Details
#ruby(*options, &block) ⇒ Object
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 |
# File 'lib/mondrian/olap/schema_udf.rb', line 194 def ruby(*, &block) udf_class_name = if .include?(:shared) "#{name.capitalize}Udf" end if udf_class_name && self.class.const_defined?(udf_class_name) udf_class = self.class.const_get(udf_class_name) else udf_class = Class.new(RubyUdfBase) self.class.const_set(udf_class_name, udf_class) if udf_class_name end udf_class.function_name = name udf_class.class_eval(&block) udf_java_class = udf_class.become_java!(false) class_name udf_java_class.getName end |