• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

box / box-java-sdk / #5922

17 Dec 2025 05:03PM UTC coverage: 35.498% (-0.4%) from 35.917%
#5922

push

github

web-flow
fix: add taxonomy to Metadata Field (read) definition (box/box-openapi#572) (#1644)

Co-authored-by: box-sdk-build <box-sdk-build@box.com>

2 of 2 new or added lines in 1 file covered. (100.0%)

535 existing lines in 31 files now uncovered.

18926 of 53316 relevant lines covered (35.5%)

0.35 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

53.85
/src/main/java/com/box/sdkgen/schemas/aiextractstructured/AiExtractStructured.java
1
package com.box.sdkgen.schemas.aiextractstructured;
2

3
import com.box.sdkgen.internal.NullableFieldTracker;
4
import com.box.sdkgen.internal.SerializableObject;
5
import com.box.sdkgen.schemas.aiagentextractstructured.AiAgentExtractStructured;
6
import com.box.sdkgen.schemas.aiagentreference.AiAgentReference;
7
import com.box.sdkgen.schemas.aiextractstructuredagent.AiExtractStructuredAgent;
8
import com.box.sdkgen.schemas.aiitembase.AiItemBase;
9
import com.fasterxml.jackson.annotation.JsonFilter;
10
import com.fasterxml.jackson.annotation.JsonProperty;
11
import java.util.List;
12
import java.util.Objects;
13

14
/** AI Extract Structured Request object. */
15
@JsonFilter("nullablePropertyFilter")
16
public class AiExtractStructured extends SerializableObject {
17

18
  /** The items to be processed by the LLM. Currently you can use files only. */
19
  protected final List<AiItemBase> items;
20

21
  /**
22
   * The metadata template containing the fields to extract. For your request to work, you must
23
   * provide either `metadata_template` or `fields`, but not both.
24
   */
25
  @JsonProperty("metadata_template")
26
  protected AiExtractStructuredMetadataTemplateField metadataTemplate;
27

28
  /**
29
   * The fields to be extracted from the provided items. For your request to work, you must provide
30
   * either `metadata_template` or `fields`, but not both.
31
   */
32
  protected List<AiExtractStructuredFieldsField> fields;
33

34
  @JsonProperty("ai_agent")
35
  protected AiExtractStructuredAgent aiAgent;
36

37
  public AiExtractStructured(@JsonProperty("items") List<AiItemBase> items) {
UNCOV
38
    super();
×
UNCOV
39
    this.items = items;
×
UNCOV
40
  }
×
41

42
  protected AiExtractStructured(Builder builder) {
43
    super();
1✔
44
    this.items = builder.items;
1✔
45
    this.metadataTemplate = builder.metadataTemplate;
1✔
46
    this.fields = builder.fields;
1✔
47
    this.aiAgent = builder.aiAgent;
1✔
48
    markNullableFieldsAsSet(builder.getExplicitlySetNullableFields());
1✔
49
  }
1✔
50

51
  public List<AiItemBase> getItems() {
52
    return items;
1✔
53
  }
54

55
  public AiExtractStructuredMetadataTemplateField getMetadataTemplate() {
56
    return metadataTemplate;
1✔
57
  }
58

59
  public List<AiExtractStructuredFieldsField> getFields() {
60
    return fields;
1✔
61
  }
62

63
  public AiExtractStructuredAgent getAiAgent() {
64
    return aiAgent;
1✔
65
  }
66

67
  @Override
68
  public boolean equals(Object o) {
UNCOV
69
    if (this == o) {
×
UNCOV
70
      return true;
×
71
    }
UNCOV
72
    if (o == null || getClass() != o.getClass()) {
×
UNCOV
73
      return false;
×
74
    }
UNCOV
75
    AiExtractStructured casted = (AiExtractStructured) o;
×
UNCOV
76
    return Objects.equals(items, casted.items)
×
UNCOV
77
        && Objects.equals(metadataTemplate, casted.metadataTemplate)
×
78
        && Objects.equals(fields, casted.fields)
×
79
        && Objects.equals(aiAgent, casted.aiAgent);
×
80
  }
81

82
  @Override
83
  public int hashCode() {
84
    return Objects.hash(items, metadataTemplate, fields, aiAgent);
×
85
  }
86

87
  @Override
88
  public String toString() {
89
    return "AiExtractStructured{"
×
90
        + "items='"
91
        + items
92
        + '\''
93
        + ", "
94
        + "metadataTemplate='"
95
        + metadataTemplate
96
        + '\''
97
        + ", "
98
        + "fields='"
99
        + fields
100
        + '\''
101
        + ", "
102
        + "aiAgent='"
103
        + aiAgent
104
        + '\''
105
        + "}";
106
  }
107

108
  public static class Builder extends NullableFieldTracker {
109

110
    protected final List<AiItemBase> items;
111

112
    protected AiExtractStructuredMetadataTemplateField metadataTemplate;
113

114
    protected List<AiExtractStructuredFieldsField> fields;
115

116
    protected AiExtractStructuredAgent aiAgent;
117

118
    public Builder(List<AiItemBase> items) {
119
      super();
1✔
120
      this.items = items;
1✔
121
    }
1✔
122

123
    public Builder metadataTemplate(AiExtractStructuredMetadataTemplateField metadataTemplate) {
124
      this.metadataTemplate = metadataTemplate;
1✔
125
      return this;
1✔
126
    }
127

128
    public Builder fields(List<AiExtractStructuredFieldsField> fields) {
129
      this.fields = fields;
1✔
130
      return this;
1✔
131
    }
132

133
    public Builder aiAgent(AiAgentReference aiAgent) {
UNCOV
134
      this.aiAgent = new AiExtractStructuredAgent(aiAgent);
×
UNCOV
135
      return this;
×
136
    }
137

138
    public Builder aiAgent(AiAgentExtractStructured aiAgent) {
139
      this.aiAgent = new AiExtractStructuredAgent(aiAgent);
1✔
140
      return this;
1✔
141
    }
142

143
    public Builder aiAgent(AiExtractStructuredAgent aiAgent) {
UNCOV
144
      this.aiAgent = aiAgent;
×
UNCOV
145
      return this;
×
146
    }
147

148
    public AiExtractStructured build() {
149
      return new AiExtractStructured(this);
1✔
150
    }
151
  }
152
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc