Implemented a GroupCreationProcessor and revised/added Javadoc
This commit is contained in:
parent
422d38f093
commit
1d4492b3d5
@ -46,7 +46,7 @@ public class Group extends Contact {
|
||||
/**
|
||||
* Sets the members of this group.
|
||||
*
|
||||
* @param Members a list of all users, that should be assigned to this group.
|
||||
* @param members a list of all users, that should be assigned to this group.
|
||||
* @since Envoy Server Standalone v0.1-beta
|
||||
*/
|
||||
public void setMembers(List<User> members) { this.members = members; }
|
||||
|
@ -52,7 +52,7 @@ public class PersistenceManager {
|
||||
/**
|
||||
* Adds a {@link Contact} to the database.
|
||||
*
|
||||
* @param user the {@link Contact} to add to the database
|
||||
* @param contact the {@link Contact} to add to the database
|
||||
* @since Envoy Server Standalone v0.1-alpha
|
||||
*/
|
||||
public void addContact(Contact contact) { persist(contact); }
|
||||
@ -76,7 +76,7 @@ public class PersistenceManager {
|
||||
/**
|
||||
* Updates a {@link Contact} in the database
|
||||
*
|
||||
* @param user the {@link Contact} to add to the database
|
||||
* @param contact the {@link Contact} to add to the database
|
||||
* @since Envoy Server Standalone v0.1-alpha
|
||||
*/
|
||||
public void updateContact(Contact contact) { merge(contact); }
|
||||
@ -100,7 +100,7 @@ public class PersistenceManager {
|
||||
/**
|
||||
* Deletes a {@link Contact} in the database.
|
||||
*
|
||||
* @param user the {@link Contact} to delete
|
||||
* @param contact the {@link Contact} to delete
|
||||
* @since Envoy Server Standalone v0.1-alpha
|
||||
*/
|
||||
public void deleteContact(Contact contact) { remove(contact); }
|
||||
|
@ -0,0 +1,34 @@
|
||||
package envoy.server.processors;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
import envoy.event.GroupCreationEvent;
|
||||
import envoy.server.data.PersistenceManager;
|
||||
import envoy.server.net.ObjectWriteProxy;
|
||||
|
||||
/**
|
||||
* Project: <strong>envoy-server-standalone</strong><br>
|
||||
* File: <strong>GroupCreationProcessor.java</strong><br>
|
||||
* Created: <strong>26.03.2020</strong><br>
|
||||
*
|
||||
* @author Maximilian Käfer
|
||||
* @since Envoy Server Standalone v0.1-beta
|
||||
*/
|
||||
public class GroupCreationProcessor implements ObjectProcessor<GroupCreationEvent> {
|
||||
|
||||
private final PersistenceManager persistenceManager = PersistenceManager.getInstance();
|
||||
|
||||
@Override
|
||||
public void process(GroupCreationEvent input, long socketId, ObjectWriteProxy writeProxy) throws IOException {
|
||||
envoy.server.data.Group group = new envoy.server.data.Group();
|
||||
group.setName(input.get());
|
||||
// TODO adjust event, so it sends a members list as well, which can be initially
|
||||
// set here
|
||||
persistenceManager.addContact(group);
|
||||
writeProxy.write(socketId, group); // TODO Prepare the client to receive the group object after sending the
|
||||
// groupCreationEvent to the server.
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<GroupCreationEvent> getInputClass() { return GroupCreationEvent.class; }
|
||||
}
|
@ -33,8 +33,17 @@ public class IDGeneratorRequestProcessor implements ObjectProcessor<IDGeneratorR
|
||||
writeProxy.write(socketId, generator);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return a new IDGenerator
|
||||
* @since Envoy Server Standalone v0.1-beta
|
||||
*/
|
||||
public static IDGenerator createIDGenerator() { return createIDGenerator(ID_RANGE); }
|
||||
|
||||
/**
|
||||
* @param range of IDs used by the new IDGenerator
|
||||
* @return a new IDGenerator with a specific range of IDs
|
||||
* @since Envoy Server Standalone v0.1-beta
|
||||
*/
|
||||
public static IDGenerator createIDGenerator(long range) {
|
||||
ConfigItem currentId = PersistenceManager.getInstance().getConfigItemById("currentMessageId");
|
||||
IDGenerator generator = new IDGenerator(Integer.parseInt(currentId.getValue()), range);
|
||||
|
Reference in New Issue
Block a user