EMU/Protocol: Difference between revisions

From EiffelStudio: an EiffelSoftware project
Jump to navigation Jump to search
Barnski (talk | contribs)
Manus (talk | contribs)
No edit summary
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Projects]]
[[Image:emu_logo_03.png|right|frame| EMUs: Eiffel Multi Users]]
===Messages===
===Messages===
Messages are encapsulated within objects that are being transmitted over the network.
Messages are encapsulated within objects that are being transmitted over the network.
All messages inherit from EMU_MESSAGE.


====Client====
====Client====
login
* login
version
version
projectname
projectname
username
username
password
password


update_request
* update_request
wants to receive new files
wants to receive new files


unlock_request
* unlock_request
wants to edit a code chunk
wants to edit a code chunk


upload_chunk
* upload_chunk
upload an edited chunk
upload an edited chunk


relock_request
* relock_request
wants to end locking session
wants to end locking session


lock_status_request
* lock_status_request
get information about all classes
get information about all classes


online_status_request
* online_status_request
get information about online users
get information about online users


logout
* logout
informs about a logout of the client
informs about a logout of the client


====Server====
====Server====
login_accepted
* login_accepted
 
* login_denied
 
* update
class files
 
* unlock_request_granted
checks status
sets status
 
* unlock_request_denied
status information
 
* lock_status
send status information of all classes
 
* online_status
send status of users online
 
* server_down
send information about server down
 
* send_message
send a message to all clients
 
 
====Server-Administration====
The administration tool is meant to maintain and control the server.
 
* admin_login
admin_name
admin_password
 
* admin_cmd
command to be executed? or attribute indicating which command should be executed?
 
 
====Project-Administration====
There are two ways of administrating an emu-project:
 
1. using the New EMU Project Wizard (create)
 
2. using the EMU Project Settings dialog (customize)
 
All messages inherit from EMU_PROJECT_MESSAGE, which has an attribute "project_name".
 
'''to server'''
 
* PROJECT_CREATE
project_password
 
* PROJECT_DELETE
project_password
 
* PROJECT_ADD_USER
project_password
user_name
user_password
 
* PROJECT_REMOVE_USER
project_password
user_name


login_denied
* PROJECT_CLASS_LIST_REQUEST
project_password


update
* PROJECT_USER_LIST_REQUEST
class files
project_password


unlock_request_granted
* PROJECT_CLASS_UNLOCK_REQUEST
checks status
project_password
sets status
class_name


unlock_request_denied
'''from server'''
status information


lock_status
* PROJECT_ERROR
send status information of all classes
error_code
error_msg


online_status
* PROJECT_OK
send status of users online
ok_code
ok_msg


server_down
* PROJECT_CLASS_LIST
send information about server down
class_list


send_message
* PROJECT_USER_LIST
send a message to all clients
user_list

Latest revision as of 16:13, 15 June 2006

EMUs: Eiffel Multi Users

Messages

Messages are encapsulated within objects that are being transmitted over the network. All messages inherit from EMU_MESSAGE.

Client

  • login
version
projectname
username
password
  • update_request
wants to receive new files
  • unlock_request
wants to edit a code chunk
  • upload_chunk
upload an edited chunk
  • relock_request
wants to end locking session
  • lock_status_request
get information about all classes
  • online_status_request
get information about online users
  • logout
informs about a logout of the client

Server

  • login_accepted
  • login_denied
  • update
class files
  • unlock_request_granted
checks status
sets status
  • unlock_request_denied
status information
  • lock_status
send status information of all classes
  • online_status
send status of users online
  • server_down
send information about server down
  • send_message
send a message to all clients


Server-Administration

The administration tool is meant to maintain and control the server.

  • admin_login
admin_name
admin_password
  • admin_cmd
command to be executed? or attribute indicating which command should be executed?


Project-Administration

There are two ways of administrating an emu-project:

1. using the New EMU Project Wizard (create)

2. using the EMU Project Settings dialog (customize)

All messages inherit from EMU_PROJECT_MESSAGE, which has an attribute "project_name".

to server

  • PROJECT_CREATE
project_password
  • PROJECT_DELETE
project_password
  • PROJECT_ADD_USER
project_password
user_name
user_password
  • PROJECT_REMOVE_USER
project_password
user_name
  • PROJECT_CLASS_LIST_REQUEST
project_password
  • PROJECT_USER_LIST_REQUEST
project_password
  • PROJECT_CLASS_UNLOCK_REQUEST
project_password
class_name

from server

  • PROJECT_ERROR
error_code
error_msg
  • PROJECT_OK
ok_code
ok_msg
  • PROJECT_CLASS_LIST
class_list
  • PROJECT_USER_LIST
user_list