forked from github/copilot-sdk-java
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSessionStartHookInput.java
More file actions
116 lines (101 loc) · 2.85 KB
/
SessionStartHookInput.java
File metadata and controls
116 lines (101 loc) · 2.85 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
/*---------------------------------------------------------------------------------------------
* 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;
/**
* Input for a session-start hook.
* <p>
* This hook is invoked when a session starts, allowing you to perform
* initialization or modify the session configuration.
*
* @since 1.0.7
*/
@JsonIgnoreProperties(ignoreUnknown = true)
public class SessionStartHookInput {
@JsonProperty("timestamp")
private long timestamp;
@JsonProperty("cwd")
private String cwd;
@JsonProperty("source")
private String source;
@JsonProperty("initialPrompt")
private String initialPrompt;
/**
* Gets the timestamp when the session started.
*
* @return the timestamp in milliseconds since epoch
*/
public long getTimestamp() {
return timestamp;
}
/**
* Sets the timestamp when the session started.
*
* @param timestamp
* the timestamp in milliseconds since epoch
* @return this instance for method chaining
*/
public SessionStartHookInput setTimestamp(long timestamp) {
this.timestamp = timestamp;
return this;
}
/**
* Gets the current working directory.
*
* @return the current working directory
*/
public String getCwd() {
return cwd;
}
/**
* Sets the current working directory.
*
* @param cwd
* the current working directory
* @return this instance for method chaining
*/
public SessionStartHookInput setCwd(String cwd) {
this.cwd = cwd;
return this;
}
/**
* Gets the source of the session start.
*
* @return the source: "startup", "resume", or "new"
*/
public String getSource() {
return source;
}
/**
* Sets the source of the session start.
*
* @param source
* the source: "startup", "resume", or "new"
* @return this instance for method chaining
*/
public SessionStartHookInput setSource(String source) {
this.source = source;
return this;
}
/**
* Gets the initial prompt, if any.
*
* @return the initial prompt, or {@code null}
*/
public String getInitialPrompt() {
return initialPrompt;
}
/**
* Sets the initial prompt.
*
* @param initialPrompt
* the initial prompt
* @return this instance for method chaining
*/
public SessionStartHookInput setInitialPrompt(String initialPrompt) {
this.initialPrompt = initialPrompt;
return this;
}
}