User Tools

Site Tools


tanszek:oktatas:iss_t:xml-rpc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tanszek:oktatas:iss_t:xml-rpc [2026/03/16 08:52] – [XML-RPC Programming Exercise – Remote Task Manager] kneheztanszek:oktatas:iss_t:xml-rpc [2026/03/16 09:32] (current) – [Server] knehez
Line 54: Line 54:
 ---- ----
  
-====XML-RPC Programming Exercise – Remote Task Manager =====+==== Task: XML-RPC – Remote Task Manager ====
  
 The goal of this exercise is to understand how **Remote Procedure Calls (RPC)** work in a client–server architecture using the XML-RPC protocol. Implement a simple **task management system** consisting of a Python **XML-RPC server** and a Python **client application**. The goal of this exercise is to understand how **Remote Procedure Calls (RPC)** work in a client–server architecture using the XML-RPC protocol. Implement a simple **task management system** consisting of a Python **XML-RPC server** and a Python **client application**.
Line 60: Line 60:
 ==== Server ==== ==== Server ====
  
-Create an XML-RPC server in Python that manages a list of tasks. +Create an XML-RPC server in Python that manages a list of tasks. Each task should contain the following fields:
- +
-Each task should contain the following fields:+
  
   * **id** – unique integer identifier   * **id** – unique integer identifier
Line 76: Line 74:
 | delete_task(task_id) | Removes the specified task | | delete_task(task_id) | Removes the specified task |
 | get_task(task_id) | Returns the details of a single task | | get_task(task_id) | Returns the details of a single task |
 +| get_task_by_title(title) | Returns the details of a single task (by title string) |
  
 The server should store tasks **in memory** while it is running. The server should store tasks **in memory** while it is running.
Line 81: Line 80:
 ==== Client ==== ==== Client ====
  
-Write a Python client that connects to the XML-RPC server and allows the user to interact with the task manager. +Write a Python client that connects to the XML-RPC server and allows the user to interact with the task manager. The client program should:
- +
-The client program should:+
  
   * connect to the XML-RPC server   * connect to the XML-RPC server
Line 91: Line 88:
 The client should provide a simple **command line menu**, for example: The client should provide a simple **command line menu**, for example:
  
-<sxh python>+<code python>
 1 - Add task 1 - Add task
 2 - List tasks 2 - List tasks
 3 - Complete task 3 - Complete task
 4 - Delete task 4 - Delete task
-5 - Show task details+5 - Show task details by id 
 +6 - Show task details by title
 0 - Exit 0 - Exit
-</sxh> +</code>
- +
-==== Data Format ====+
  
-All data exchanged between the client and server must use **XML-RPC compatible data types**, such as: 
  
-  * integers 
-  * strings 
-  * booleans 
-  * lists 
-  * dictionaries 
  
tanszek/oktatas/iss_t/xml-rpc.1773651165.txt.gz · Last modified: 2026/03/16 08:52 by knehez