Скачиваний:
25
Добавлен:
01.05.2014
Размер:
516.61 Кб
Скачать

Системная архитектура Use case диаграммы

1)

2)

Диаграммы классов

1)

// Класс CUserDlg

class CUserDlg : public CDialog

{

DECLARE_DYNAMIC(CUserDlg)

public:

//-----Конструктор-----

CUserDlg(CWnd* pParent = NULL);

//---Деструктор----------

virtual ~CUserDlg();

enum { IDD = IDD_USERS_DIALOG };

protected:

virtual void DoDataExchange(CDataExchange* pDX);

DECLARE_MESSAGE_MAP()

CString m_User;//Login пользователя

CString m_Pass;//Пароль пользователя

public:

//---- Проверка наличия регистрации ---

//--Вход параметры: -

//--Выходные параметры: -1 - регистация введеного login в системе уже есть

// 0 - введеный login можно зарегистрировать

int CheckLoginAndRegistration();

//---- Открыть архив пользователей ----

//--Вход параметры: -

//--Выходные параметры: -1 - архив пуст

// 0 - архив существует

int OnBnClickedOpenArch();

//--- Вход в систему ----

afx_msg void OnBnClickedOk();

//--- Регистрация в системе ------

afx_msg void OnBnClickedRegistr();

//--- Восстановить пароль ---

afx_msg void OnBnRemPass();

};

//Класс User (узел списка пользователей)

class User

{

public:

CString user_name; // Имя пользователя

CString user_pass; // Пароль пользователя

};

// класс CRegistDlg (регистрация пользователя в системе)

class CRegistDlg : public CDialog

{

DECLARE_DYNAMIC(CRegistDlg)

public:

//---- Конструктор -------

CRegistDlg(CWnd* pParent = NULL);

//---- Деструктор --------

virtual ~CRegistDlg();

enum { IDD = IDD_REGISTR_DLG };

protected:

virtual void DoDataExchange(CDataExchange* pDX);

DECLARE_MESSAGE_MAP()

CString m_RegName;// Имя

CString m_RegSurN;// Фамилия

CTime m_RegDate;// Дата рождения

CString m_RegQuestion;// Девичья фамилия матери

CString m_RegLogin;// Логин

CString m_RegPass;// Пароль

CString m_RegPass1;// Подтверждение пароля

public:

//--- Проверка совпадения полей пароля и подтверждения пароля ---

//--Входные значения: -

//--Выходные значения: 0 - значение полей совпали

// -1 - значение полей не совпали

int CheckNoCompare();

//---- Сохранение данных в архиве -----

afx_msg void OnBnClickedOk();

};

//Класс CRemPassDlg dialog

class CRemPassDlg : public CDialog

{

DECLARE_DYNAMIC(CRemPassDlg)

public:

//---- Конструктор ----

CRemPassDlg(CWnd* pParent = NULL);

//---- Деструктор ----

virtual ~CRemPassDlg();

enum { IDD = IDD_REMEBER_PASS };

protected:

virtual void DoDataExchange(CDataExchange* pDX);

protected:

DECLARE_MESSAGE_MAP()

CString m_RemLogin;// Логин

CString m_RemNewPass;// Новый пароль

CString m_RemNewPass1;// Подтверждение нового пароля

CString m_RemQuestion;// Контрольный вопрос: девичья фамилия матери

public:

//---- Запись данных в архив -----

afx_msg void OnBnClickedOk();

//--- Проверка совпадения полей пароля и подтверждения пароля ---

//--Выходные значения: 0 - значение полей совпали

// -1 - значение полей не совпали

int CheckNoCompare() ;

//---- Открыть архив пользователей ----

//--Вход параметры: -

//--Выходные параметры: -1 - архив пуст

// 0 - архив существует

int OnBnClickedOpenArchReg();

};

//Узел списка пользователей

class UserReg

{

public:

CString UserReg_name; // Имя пользователя

CString UserReg_surname;// Фамилия пользователя

CString UserReg_data; // Дата рождения пользователя

CString UserReg_question; // Девичья фамилия матери пользователя

CString UserReg_login; // Login пользователя

CString UserReg_pass; // Пароль пользователя

};

2)

class cHttpClient: public CDialog

{

public:

SOCKET dSocket;

public:

// ------------

// Конструктор

// ------------

cHttpClient(void);

// ------------------------

// Функция создания сокета

// Входные параметры:

// ---

// Возвращаемое значение:

// -1 - сокет не создан

// 1 - сокет создан

// ------------------------

int cSocket();

// --------------------------------

// Устанoвка соединения с сервером

// --------------------------------

// Входные параметры:

// 1 - имя сервера

// 2 - ШЗ-адрес сервера

// Возвращаемое значение:

// 0 - соединение успешно установлено

// -1 - ошибка установки соединения

// -----------------------------------

int cConnect(CString, unsigned long);

// ------------------------------

// Закрытие соединения с сервером

// ------------------------------

// Входные параметры:

// ---

// Возвращаемое значение:

// 0 - соединение закрыто

// -1 - ошибка закрытия соединения

// -------------------------------

int cClose();

// ------------------------------------------------

// Получение тела сообщения-отклика от сервера HTTP

// ------------------------------------------------

// Входные параметры:

// 1 - размер тела сообщения

// 2 - указатель на буффер для данных

// Выходные параметры:

// 0 - тело отклика получено

// -1 - ошибка получения тела отклика

// -----------------------------------

int GetBodyResponse(int, char*);

// -------------------------------------------

// Получение сообщения-отклика от сервера HTTP

// -------------------------------------------

// Входные параметры:

// 1 - результат исполнения запроса сервером

// Выходные параметры:

// 0 - заголовок отклика получен

// -1 - ошибка получения заголовка отклика

// -------------------------------------------

int GetResponse(int *pStatusCode);

// ------------------------------------------------------------------------------------

// Получение заголовков сообщений (заголовки сообщений завершаются пустой строкой CRLF)

// ------------------------------------------------------------------------------------

// Входные параметры:

// 1 - указатель на буффер для полученных данных

// Выходное значение:

// 0 - данные успешно получены

// -1 - ошибка при приеме данных

// --------------------------------------------------------

int RecvHeaderFromServer(char *DataFromServer);

// -------------------------------------

// Получение информации до символов CRLF

// -------------------------------------

// Входные параметры:

// 1 - указатель на буффер для полученных данных

// Выходное значение:

// 0 - данные успешно получены

// -1 - ошибка при приеме данных

// --------------------------------------------------------

int RecvDataFromServer(char *DataFromServer);

// -----------------------

// Послать данные серверу

// -----------------------

// 1 - указатель на буффер с данными

// 2 - размер данных

// 3 - флаги

// Выходное значение:

// 0 - данные успешно получены

// -1 - ошибка при приеме данных

// ----------------------------------------------

int SendData(char *, int, int);

// -----------

// Деструктор

// -----------

~cHttpClient(void);

};

// CTestHTTPDlg dialog

class CTestHTTPDlg : public CDialog

{

// Construction

public:

CTestHTTPDlg(CWnd* pParent = NULL); // standard constructor

// Dialog Data

enum { IDD = IDD_TESTHTTP_DIALOG };

protected:

virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support

// Implementation

protected:

HICON m_hIcon;

// Generated message map functions

virtual BOOL OnInitDialog();

afx_msg void OnSysCommand(UINT nID, LPARAM lParam);

afx_msg void OnPaint();

afx_msg HCURSOR OnQueryDragIcon();

DECLARE_MESSAGE_MAP()

protected:

CString nResource; // Имя ресурса

int cMetCheck; // Выбранный метод

CString metDesc; // Описание выбранного метода

CListBox nResMeth; // Результаты выполнения методов

CString nFileName; // Имя файла от сервера

public:

afx_msg void OnBnClickedExecute();

afx_msg void OnEnSetfocusEditRes();

afx_msg void OnBnClickedMethod();

afx_msg void OnBnClickedAuthors();

afx_msg void OnBnClickedChoiceFile();

afx_msg void OnOK();

// Обработка методов

void Head();

void Put();

void Delete();

void Get();

void Options();

};