FINERACT-1694: Avro schemas project + code generation + some initial Avro Schemas
This commit is contained in:
committed by
Aleksandar Vidakovic
parent
4808bb3489
commit
264022be4d
+4
-1
@@ -33,11 +33,13 @@ buildscript {
|
||||
'fineract-client',
|
||||
'core',
|
||||
'service',
|
||||
'starter'
|
||||
'starter',
|
||||
'fineract-avro-schemas'
|
||||
].contains(it.name)
|
||||
}
|
||||
fineractPublishProjects = subprojects.findAll{
|
||||
[
|
||||
'fineract-avro-schemas',
|
||||
'fineract-client'
|
||||
].contains(it.name)
|
||||
}
|
||||
@@ -80,6 +82,7 @@ plugins {
|
||||
id 'com.github.andygoossens.modernizer' version '1.6.2' apply false
|
||||
id 'com.github.spotbugs' version '5.0.10' apply false
|
||||
id 'se.thinkcode.cucumber-runner' version '0.0.11' apply false
|
||||
id "com.github.davidmc24.gradle.plugin.avro-base" version "1.3.0" apply false
|
||||
}
|
||||
|
||||
apply from: "${rootDir}/buildSrc/src/main/groovy/org.apache.fineract.release.gradle"
|
||||
|
||||
@@ -185,5 +185,7 @@ dependencyManagement {
|
||||
|
||||
dependency 'org.mapstruct:mapstruct:1.5.2.Final'
|
||||
dependency 'org.mapstruct:mapstruct-processor:1.5.2.Final'
|
||||
|
||||
dependency "org.apache.avro:avro:1.11.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import com.github.davidmc24.gradle.plugin.avro.GenerateAvroJavaTask
|
||||
|
||||
description = 'Fineract Avro Schemas'
|
||||
|
||||
apply plugin: 'com.github.davidmc24.gradle.plugin.avro-base'
|
||||
|
||||
apply from: 'dependencies.gradle'
|
||||
|
||||
// TODO: @vidakovic we should publish this lib to Maven Central; do in separate PR
|
||||
task buildJavaSdk(type: GenerateAvroJavaTask) {
|
||||
source("$projectDir/src/main/avro")
|
||||
outputDir = file("$buildDir/generated/java/src/main/java")
|
||||
}
|
||||
|
||||
|
||||
compileJava.dependsOn(buildJavaSdk, licenseFormatMain, spotlessMiscApply)
|
||||
|
||||
java {
|
||||
// keep this at Java 8, not 17
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
options.compilerArgs -= ["-Werror"]
|
||||
}
|
||||
|
||||
configurations {
|
||||
generatedCompileClasspath.extendsFrom implementation
|
||||
generatedRuntimeClasspath.extendsFrom runtimeClasspath
|
||||
}
|
||||
|
||||
test {
|
||||
useJUnitPlatform()
|
||||
}
|
||||
|
||||
sourceSets.main.java.srcDir new File(buildDir, "generated/java/src/main/java")
|
||||
|
||||
licenseFormatMain.dependsOn buildJavaSdk
|
||||
licenseMain.dependsOn buildJavaSdk
|
||||
@@ -0,0 +1,21 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
dependencies {
|
||||
implementation('org.apache.avro:avro')
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "MessageV1",
|
||||
"namespace": "org.apache.fineract.avro",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": "int",
|
||||
"doc": "The ID of the message to be sent"
|
||||
},
|
||||
{
|
||||
"name": "source",
|
||||
"type": "string",
|
||||
"doc": "A unique identifier of the source service"
|
||||
},
|
||||
{
|
||||
"name": "type",
|
||||
"type": "string",
|
||||
"doc": "The type of event the payload refers to. For example LOAN_APPROVED"
|
||||
},
|
||||
{
|
||||
"name": "version",
|
||||
"type": "string",
|
||||
"doc": "The version of the type of event. For example 1, 2, 3, etc"
|
||||
},
|
||||
{
|
||||
"name": "category",
|
||||
"type": "string",
|
||||
"doc": "The category of event the payload refers to. For example LOAN"
|
||||
},
|
||||
{
|
||||
"name": "createdAt",
|
||||
"type": "string",
|
||||
"doc": "The UTC time of when the event has been raised; in ISO_LOCAL_DATE_TIME format. For example 2011-12-03T10:15:30"
|
||||
},
|
||||
{
|
||||
"name": "tenantId",
|
||||
"type": "string",
|
||||
"doc": "The tenantId that the event has been sent from. For example default"
|
||||
},
|
||||
{
|
||||
"name": "idempotencyKey",
|
||||
"type": "string",
|
||||
"doc": "The idempotency key for this particular event for consumer de-duplication"
|
||||
},
|
||||
{
|
||||
"name": "payload",
|
||||
"type": "bytes",
|
||||
"doc": "The payload serialized into Avro bytes"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "ClientEventV1",
|
||||
"namespace": "org.apache.fineract.avro.client.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "accountNo",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "status",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.client.v1.ClientEventV1Status"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "active",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "fullName",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "displayName",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "officeId",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "officeName",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "ClientEventV1Status",
|
||||
"namespace": "org.apache.fineract.avro.client.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,208 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "accountNo",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "clientId",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "clientName",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "savingsProductId",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "savingsProductName",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "fieldOfficerId",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "status",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1Status"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "timeline",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1Timeline"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "currency",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1Currency"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "interestCompoundingPeriodType",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1InterestCompoundingPeriodType"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "interestPostingPeriodType",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1InterestPostingPeriodType"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "interestCalculationType",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1InterestCalculationType"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "interestCalculationDaysInYearType",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1InterestCalculationDaysInYearType"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "summary",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1Summary"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "interestFreePeriodApplicable",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "preClosurePenalApplicable",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "minDepositTerm",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "maxDepositTerm",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "minDepositTermType",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1MinDepositTermType"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "maxDepositTermType",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1MaxDepositTermType"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "depositAmount",
|
||||
"type": [
|
||||
"null",
|
||||
"float"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "maturityAmount",
|
||||
"type": [
|
||||
"null",
|
||||
"float"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "maturityDate",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "depositPeriod",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "depositPeriodFrequency",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1DepositPeriodFrequency"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+75
@@ -0,0 +1,75 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1Currency",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "name",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "decimalPlaces",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "inMultiplesOf",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "displaySymbol",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "nameCode",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "displayLabel",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1DepositPeriodFrequency",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1InterestCalculationDaysInYearType",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "accountBalance",
|
||||
"type": [
|
||||
"null",
|
||||
"float"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "currency",
|
||||
"type": [
|
||||
"null",
|
||||
"org.apache.fineract.avro.fixeddeposit.v1.FixedDepositAccountEventV1Currency"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1InterestCalculationType",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1InterestCompoundingPeriodType",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1InterestPostingPeriodType",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1MaxDepositTermType",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1MinDepositTermType",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+110
@@ -0,0 +1,110 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1Status",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "submittedAndPendingApproval",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "approved",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "rejected",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "withdrawnByApplicant",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "active",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "closed",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "prematureClosed",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "transferInProgress",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "transferOnHold",
|
||||
"type": [
|
||||
"null",
|
||||
"boolean"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1Summary",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "id",
|
||||
"type": [
|
||||
"null",
|
||||
"int"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "code",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "FixedDepositAccountEventV1Timeline",
|
||||
"namespace": "org.apache.fineract.avro.fixeddeposit.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "submittedOnDate",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "submittedByUsername",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "submittedByFirstname",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "submittedByLastname",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
{
|
||||
"name": "CommandProcessingResultEventV1",
|
||||
"namespace": "org.apache.fineract.avro.generic.v1",
|
||||
"type": "record",
|
||||
"fields": [
|
||||
{
|
||||
"name": "commandId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "officeId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "groupId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "clientId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "loanId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "savingsId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "resourceId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "subResourceId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "transactionId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "resourceIdentifier",
|
||||
"type": [
|
||||
"null",
|
||||
"string"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "productId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "gsimId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "glimId",
|
||||
"type": [
|
||||
"null",
|
||||
"long"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -324,5 +324,5 @@ checkstyleMain.dependsOn resolve
|
||||
checkstyleTest.dependsOn resolve
|
||||
rat.dependsOn prepareInputYaml
|
||||
spotbugsTest.dependsOn resolve
|
||||
compileTestJava.dependsOn ':fineract-client:processResources'
|
||||
compileTestJava.dependsOn ':fineract-client:processResources', ':fineract-avro-schemas:processResources'
|
||||
bootJarMainClassName.dependsOn resolve
|
||||
|
||||
@@ -63,6 +63,9 @@ distributions {
|
||||
from ("$rootDir/fineract-client/build/libs/") {
|
||||
include 'fineract-client-*.jar'
|
||||
}
|
||||
from ("$rootDir/fineract-avro-schemas/build/libs/") {
|
||||
include 'fineract-avro-schemas-*.jar'
|
||||
}
|
||||
from ("$rootDir/fineract-provider/build/libs/") {
|
||||
include 'fineract-provider-*.jar'
|
||||
exclude 'fineract-provider-*-plain.jar'
|
||||
@@ -101,4 +104,4 @@ distributions {
|
||||
binaryDistZip.enabled false
|
||||
srcDistZip.enabled false
|
||||
// NOTE: Gradle suggested these dependencies
|
||||
binaryDistTar.dependsOn(war, ':fineract-client:jar', ':fineract-provider:build', ':fineract-doc:doc')
|
||||
binaryDistTar.dependsOn(war, ':fineract-client:jar', ':fineract-avro-schemas:jar', ':fineract-provider:build', ':fineract-doc:doc')
|
||||
|
||||
@@ -23,6 +23,7 @@ dependencies {
|
||||
tomcat 'org.apache.tomcat:tomcat:9.0.65@zip'
|
||||
testImplementation( files("$rootDir/fineract-provider/build/classes/java/main/"),
|
||||
project(path: ':fineract-provider', configuration: 'runtimeElements'),
|
||||
project(path: ':fineract-avro-schemas', configuration: 'runtimeElements'),
|
||||
project(path: ':fineract-client', configuration: 'runtimeElements'),
|
||||
'io.cucumber:cucumber-spring',
|
||||
'com.intuit.karate:karate-junit5',
|
||||
|
||||
@@ -28,3 +28,4 @@ include ':twofactor-tests'
|
||||
include ':oauth2-tests'
|
||||
include ':fineract-client'
|
||||
include ':fineract-doc'
|
||||
include ':fineract-avro-schemas'
|
||||
|
||||
Reference in New Issue
Block a user