Module: Cassie::Statements::Execution::PartitionLinking
- Extended by:
- ActiveSupport::Concern
- Included in:
- Cassie::Statements::Execution
- Defined in:
- lib/cassie/statements/execution/partition_linking/policy_methods.rb,
lib/cassie/statements/execution/partition_linking.rb,
lib/cassie/statements/execution/partition_linking/simple_policy.rb,
lib/cassie/statements/execution/partition_linking/cursoring_policy.rb
Overview
Note: currently supports only natural linking that is in the same direction as the clustering order
Defined Under Namespace
Modules: ClassMethods, PolicyMethods
Classes: CursoringPolicy, SimplePolicy
Instance Method Summary
collapse
Instance Method Details
#build_partition_linker ⇒ Object
42
43
44
|
# File 'lib/cassie/statements/execution/partition_linking.rb', line 42
def build_partition_linker
self.class.partition_linker.new(self, *self.class.partition_linker_args)
end
|
#execute(*args) ⇒ Object
32
33
34
35
36
37
38
39
40
|
# File 'lib/cassie/statements/execution/partition_linking.rb', line 32
def execute(*args)
success = super
if success && partition_linker?
@result = build_partition_linker.link
result.success?
else
success
end
end
|
#partition_linker? ⇒ Boolean
46
47
48
|
# File 'lib/cassie/statements/execution/partition_linking.rb', line 46
def partition_linker?
!!self.class.partition_linker_args
end
|