コード例 #1
0
def config_value_completer(ctxt, cass):
    option = ctxt.get_binding('configoption')
    if option in [
            'autoCommitTime', 'mergeMaxThreadCount', 'mergeMaxMergeCount',
            'filterCacheLowWaterMark', 'filterCacheLowWaterMark'
    ]:
        return [Hint('<wholenumber>')]
    elif option == 'directoryFactory':
        return ["'encrypted'", "'standard'"]
    elif option == 'typeMappingVersion':
        return ['2']
    elif option == 'realtime':
        return ['true', 'false']
    else:
        return [Hint('<stringLiteral')]
コード例 #2
0
def set_or_drop_attribute_completer(ctxt, cass):
    elementName = ctxt.get_binding('elements')[-1]
    all_attributes = get_all_attributes_for_element(elementName)
    if not all_attributes:
        return [Hint('<attributeName>')]
    else:
        return all_attributes
コード例 #3
0
def element_name_completer(ctxt, cass):
    resourceType = ctxt.get_binding('resourcetype')
    if resourceType.lower() == "schema":
        elements = ctxt.get_binding('elements', ())
        if not elements:
            return [
                'field', 'fieldType', 'copyField', 'dynamicField', 'similarity'
            ]
        else:
            first_element = elements[0]
            last_element = elements[-1]
            if first_element == 'fieldType':
                if last_element == 'fieldType':
                    return ['analyzer']
                elif last_element == 'analyzer':
                    return ['tokenizer', 'filter']
            return []
    else:
        elements = ctxt.get_binding('elements', ())
        if not elements:
            return [
                'autoCommitTime', 'defaultQueryField', 'directoryFactory',
                'mergeFactor', 'ramBufferSize', 'mergeMaxThreadCount',
                'mergeMaxMergeCount', 'realtime', 'filterCacheLowWaterMark',
                'filterCacheHighWaterMark'
            ]
        else:
            return [Hint('<configXmlElement>')]
コード例 #4
0
def attribute_value_completer(ctxt, cass):
    resourceType = ctxt.get_binding('resourcetype')
    if resourceType.lower() == "schema":
        set_equals = ctxt.get_binding('setequals')
        if not set_equals:
            last_attribute = ctxt.get_binding('attributes')[-1]
            if last_attribute in boolean_attributes:
                return ["'true'", "'false'"]
            elif last_attribute in int_attributes:
                return [Hint("<wholeNumber>")]
            else:
                return [Hint("<stringLiteral>")]
        else:
            set_attribute = ctxt.get_binding('setOrDropAttribute')
            if set_attribute in boolean_attributes:
                return ["true", "false"]
            elif set_attribute in int_attributes:
                return [Hint("<wholeNumber>")]
            else:
                return [Hint("<stringLiteral>")]
    else:
        set_equals = ctxt.get_binding('setequals')
        elementName = ctxt.get_binding('elements')[-1]
        if set_equals:
            if elementName == 'autoCommitTime':
                return [Hint("<wholeNumber>")]
            elif elementName == 'defaultQueryField':
                return [Hint("<stringLiteral>")]
            elif elementName == 'directoryFactory':
                return ['standard', 'encrypted']
            elif elementName == 'mergeFactor':
                return [Hint("<wholeNumber>")]
            elif elementName == 'ramBufferSize':
                return [Hint("<wholeNumber>")]
            elif elementName == 'mergeMaxThreadCount':
                return [Hint("<wholeNumber>")]
            elif elementName == 'mergeMaxMergeCount':
                return [Hint("<wholeNumber>")]
            elif elementName == 'realtime':
                return ["'true'", "'false'"]
            elif elementName == 'filterCacheLowWaterMark':
                return [Hint("<wholeNumber>")]
            elif elementName == 'filterCacheHighWaterMark':
                return [Hint("<wholeNumber>")]
        return [Hint("<attributeValue>")]
コード例 #5
0
def remote_object_completer(ctxt, cass):
    return [Hint('<remoteObjectMethodName>')]