Refactor Java API (#806)

This commit is contained in:
Fangjun Kuang
2024-04-24 18:41:48 +08:00
committed by GitHub
parent c7691650d7
commit c3a2e8a67c
42 changed files with 1008 additions and 968 deletions

View File

@@ -1,18 +1,22 @@
/*
* // Copyright 2022-2023 by zhaoming
*/
// Copyright 2022-2023 by zhaoming
// Copyright 2024 Xiaomi Corporation
package com.k2fsa.sherpa.onnx;
public class EndpointConfig {
private final EndpointRule rule1;
private final EndpointRule rule2;
private final EndpointRule rule3;
public EndpointConfig(EndpointRule rule1, EndpointRule rule2, EndpointRule rule3) {
this.rule1 = rule1;
this.rule2 = rule2;
this.rule3 = rule3;
private EndpointConfig(Builder builder) {
this.rule1 = builder.rule1;
this.rule2 = builder.rule2;
this.rule3 = builder.rule3;
}
public static Builder builder() {
return new Builder();
}
public EndpointRule getRule1() {
@@ -26,4 +30,42 @@ public class EndpointConfig {
public EndpointRule getRule3() {
return rule3;
}
public static class Builder {
private EndpointRule rule1 = EndpointRule.builder().
setMustContainNonSilence(false).
setMinTrailingSilence(2.4f).
setMinUtteranceLength(0).
build();
private EndpointRule rule2 = EndpointRule.builder().
setMustContainNonSilence(true).
setMinTrailingSilence(1.4f).
setMinUtteranceLength(0).
build();
private EndpointRule rule3 = EndpointRule.builder().
setMustContainNonSilence(false).
setMinTrailingSilence(0.0f).
setMinUtteranceLength(20.0f).
build();
public EndpointConfig build() {
return new EndpointConfig(this);
}
public Builder setRule1(EndpointRule rule) {
this.rule1 = rule;
return this;
}
public Builder setRule2(EndpointRule rule) {
this.rule2 = rule;
return this;
}
public Builder setRul3(EndpointRule rule) {
this.rule3 = rule;
return this;
}
}
}