-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathPostToolUseHookInput.java
More file actions
138 lines (120 loc) · 3.26 KB
/
PostToolUseHookInput.java
File metadata and controls
138 lines (120 loc) · 3.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
*--------------------------------------------------------------------------------------------*/
package com.github.copilot.sdk.json;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.JsonNode;
/**
* Input for a post-tool-use hook.
*
* @since 1.0.6
*/
@JsonIgnoreProperties(ignoreUnknown = true)
public class PostToolUseHookInput {
@JsonProperty("timestamp")
private long timestamp;
@JsonProperty("cwd")
private String cwd;
@JsonProperty("toolName")
private String toolName;
@JsonProperty("toolArgs")
private JsonNode toolArgs;
@JsonProperty("toolResult")
private JsonNode toolResult;
/**
* Gets the timestamp of the hook invocation.
*
* @return the timestamp in milliseconds
*/
public long getTimestamp() {
return timestamp;
}
/**
* Sets the timestamp of the hook invocation.
*
* @param timestamp
* the timestamp in milliseconds
* @return this instance for method chaining
*/
public PostToolUseHookInput setTimestamp(long timestamp) {
this.timestamp = timestamp;
return this;
}
/**
* Gets the current working directory.
*
* @return the working directory path
*/
public String getCwd() {
return cwd;
}
/**
* Sets the current working directory.
*
* @param cwd
* the working directory path
* @return this instance for method chaining
*/
public PostToolUseHookInput setCwd(String cwd) {
this.cwd = cwd;
return this;
}
/**
* Gets the name of the tool that was invoked.
*
* @return the tool name
*/
public String getToolName() {
return toolName;
}
/**
* Sets the name of the tool that was invoked.
*
* @param toolName
* the tool name
* @return this instance for method chaining
*/
public PostToolUseHookInput setToolName(String toolName) {
this.toolName = toolName;
return this;
}
/**
* Gets the arguments passed to the tool.
*
* @return the tool arguments as a JSON node
*/
public JsonNode getToolArgs() {
return toolArgs;
}
/**
* Sets the arguments passed to the tool.
*
* @param toolArgs
* the tool arguments as a JSON node
* @return this instance for method chaining
*/
public PostToolUseHookInput setToolArgs(JsonNode toolArgs) {
this.toolArgs = toolArgs;
return this;
}
/**
* Gets the result returned by the tool.
*
* @return the tool result as a JSON node
*/
public JsonNode getToolResult() {
return toolResult;
}
/**
* Sets the result returned by the tool.
*
* @param toolResult
* the tool result as a JSON node
* @return this instance for method chaining
*/
public PostToolUseHookInput setToolResult(JsonNode toolResult) {
this.toolResult = toolResult;
return this;
}
}