-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathSignalCaller.java
128 lines (106 loc) · 3.98 KB
/
SignalCaller.java
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
/*
*
* * Copyright (c) 2021. Zyonic Software - Niklas Griese
* * This File, its contents and by extention the corresponding project is property of Zyonic Software and may not be used without explicit permission to do so.
* *
* * contact(at)zyonicsoftware.com
*
*/
package com.zyonicsoftware.minereaper.signal.caller;
import com.zyonicsoftware.minereaper.signal.client.Client;
import java.util.UUID;
/**
* @author Niklas Griese
* @see java.lang.reflect.Field
* @see Class more information above event calling via reflection ->
* https://stackoverflow.com/questions/18471631/event-handling-with-java-reflection
*/
public abstract class SignalCaller {
/**
* @apiNote to grab the class who called the event target
*/
private final String calledClass;
/**
* @param calledClass set the super class who called the event's
*/
public SignalCaller(final String calledClass) {
this.calledClass = calledClass;
}
/**
* @return the super class who called the event's
*/
public String getCalledClass() {
return this.calledClass;
}
/**
* @param message set the message via event call
*/
public abstract void receivePacketIsNullMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void receiveLengthToLargeMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void sendLengthToLargeMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void sendPacketMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void receivePacketMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void receiveSocketCloseMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void acceptSocketConnectionMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void unAcceptedSocketConnectionMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void disconnectAllClientMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void disconnectClientMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void connectedClientMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void canceledJobMessage(final String message);
/**
* @param message set the message via event call
*/
public abstract void clientTimeoutMessage(final String message);
/**
* @param uuid set the client which is time outed and receive nothing response
* @apiNote Important, you must let the client disconnect itself with the CLIENT_FROM_SERVER_SIDE
* or CLIENT_SIDE object an example can you find her
* @see com.zyonicsoftware.minereaper.signal.example.ExampleSignalMessageInstance
* @see com.zyonicsoftware.minereaper.signal.allocator.Allocator
* @see com.zyonicsoftware.minereaper.signal.allocator.Allocation
*/
public abstract void clientTimeout(final UUID uuid);
/**
* @param uuid will be used to call client shutdown from client to server and the server
* disconnect the client.
* @apiNote Important, you must call the event itself to disconnect him
* @see Client
* @see com.zyonicsoftware.minereaper.signal.allocator.Allocator
* @see com.zyonicsoftware.minereaper.signal.allocator.Allocation
* @see com.zyonicsoftware.minereaper.signal.example.ExampleSignalMessageInstance
*/
public abstract void clientFromClientServerSideDisconnection(final UUID uuid);
}