All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ityplatform.openicf.framework.connector-framework-protobuf.1.7.0.source-code.ConnectorObjects.proto Maven / Gradle / Ivy

The newest version!
syntax = "proto3";

option csharp_namespace = "Org.ForgeRock.OpenICF.Common.ProtoBuf";
package org.forgerock.openicf.common.protobuf;

import "CommonObjectMessages.proto";


message ObjectPoolConfiguration {
    int32 maxObjects = 1;
    int32 maxIdle = 2;
    int64 maxWait = 3;
    int64 minEvictableIdleTimeMillis = 4;
    int32 minIdle = 5;
}

message ResultsHandlerConfiguration {
    bool enableNormalizingResultsHandler = 1;
    bool enableFilteredResultsHandler = 2;
    bool enableCaseInsensitiveFilter = 3;
    bool enableAttributesToGetSearchResultsHandler = 4;
}

message ConfigurationProperty {
    int32 order = 1;
    bool required = 2;
    bool confidential = 3;
    string name = 4;
    string helpMessageKey = 5;
    string displayMessageKey = 6;
    string groupMessageKey = 7;

    string type = 8;
    string value = 9;

    repeated SPIOperation operations = 10;
}

enum SPIOperation {
    UNKNOWNOP = 0;
    AUTHENTICATIONOP = 1;
    CREATEOP = 2;
    DELETEOP = 3;
    RESOLVEUSERNAMEOP = 4;
    SCHEMAOP = 5;
    SCRIPTONCONNECTOROP = 6;
    SCRIPTONRESOURCEOP = 7;
    SEARCHOP = 8;
    SYNCOP = 9;
    TESTOP = 10;
    UPDATEATTRIBUTEVALUESOP = 11;
    UPDATEOP = 12;
}

enum APIOperation {
    UNKNOWNAPIOP = 0;
    AUTHENTICATIONAPIOP = 1;
    CREATEAPIOP = 2;
    DELETEAPIOP = 3;
    GETAPIOP = 4;
    RESOLVEUSERNAMEAPIOP = 5;
    SCHEMAAPIOP = 6;
    SCRIPTONCONNECTORAPIOP = 7;
    SCRIPTONRESOURCEAPIOP = 8;
    SEARCHAPIOP = 9;
    SYNCAPIOP = 10;
    TESTAPIOP = 11;
    UPDATEAPIOP = 12;
    VALIDATEAPIOP = 13;
}

message APIConfiguration {
    int32 order = 1;
    bool connectorPoolingSupported = 2;
    ObjectPoolConfiguration connectorPoolConfiguration = 3;
    ResultsHandlerConfiguration resultsHandlerConfiguration = 4;
    repeated ConfigurationProperty configurationProperties = 5;
    repeated TimeoutMapFieldEntry timeoutMap = 6;
    repeated APIOperation supportedOperations = 7;
    int32 producerBufferSize = 8;
}


message TimeoutMapFieldEntry {
    //option map_entry = true;
    APIOperation key = 1;
    int32 value = 2;
}

message StringMapFieldEntry {
    //option map_entry = true;
    string key = 1;
    string value = 2;
}

message CatalogMapFieldEntry {
    //option map_entry = true;
    Locale key = 1;
    repeated StringMapFieldEntry value = 2;
}

message ConnectorMessages {
    repeated CatalogMapFieldEntry catalogs = 1; //Map>
}

message ConnectorInfo {
    string connectorDisplayNameKey = 1;
    string connectorCategoryKey = 2;
    ConnectorKey connectorKey = 3;
    ConnectorMessages connectorMessages = 4;
    APIConfiguration APIConfiguration = 5;
}



message SyncTokenTest {
    AttributeUnionValue value = 1;
}


// Map and Collection Support

message ConfigurationCollectionValue {
    bool caseInsensitive = 1;
    repeated ConfigurationUnionValue configuration = 2;
}



message ConfigurationUnionValue {
    oneof payload {
        string stringValue = 1;
        int64 longValue = 2;
        string characterValue =3;
        double doubleValue = 4;
        float floatValue = 5;
        int32 integerValue = 6;
        bool booleanValue = 7;
        string uriValue = 8;
        string fileValue = 9;
        bytes guardedByteArrayValue = 10;
        bytes guardedStringValue = 11;
        Script scriptValue = 12;
    }
}

message AttributeCollectionValue {
    bool caseInsensitive = 1;
    repeated AttributeUnionValue attribute = 2;
}

message AttributeMapValue {
    bool caseInsensitive = 1;
    repeated AttributeMapFieldEntry value = 2;
}

message AttributeMapFieldEntry {
    //option map_entry = true;
    string key = 1;
    oneof value {
        AttributeUnionValue attribute = 2;
        AttributeCollectionValue collectionAttribute = 3;
    }
}

message AttributeMessage {
    //option map_entry = true;
    string name = 1;
    repeated AttributeUnionValue value = 2;
}

message AttributeUnionValue {
    oneof payload {
        string stringValue = 1;
        int64 longValue = 2;
        string characterValue =3;
        double doubleValue = 4;
        float floatValue = 5;
        int32 integerValue = 6;
        bool booleanValue = 7;
        bytes byteValue = 8;
        bytes byteArrayValue = 9;
        BigDecimal bigDecimalValue = 10;
        string bigIntegerValue = 11;
        bytes guardedByteArrayValue = 12;
        bytes guardedStringValue = 13;
        AttributeMapValue mapValue = 14;
    }
}

message OperationOptionUnionValue {
    oneof payload {
        string stringValue = 1;
        int64 longValue = 2;
        string characterValue =3;
        double doubleValue = 4;
        float floatValue = 5;
        int32 integerValue = 6;
        bool booleanValue = 7;
        string uriValue = 8;
        string fileValue = 9;
        bytes guardedByteArrayValue = 10;
        bytes guardedStringValue = 11;
        Script scriptValue = 12;
        string objectClassValue = 13;
        Uid uidValue = 14;
        QualifiedUid qualifiedUidValue = 15;
        SortKey sortKeyValue = 16;
    }
}

message OperationOptionMapFieldEntry {
    //option map_entry = true;
    string key = 1;
    repeated OperationOptionUnionValue values = 2;
    bool isArray = 3;
}