예제 #1
0
void CTransferSocket::OnConnect()
{
	controlSocket_.SetAlive();
	controlSocket_.LogMessage(MessageType::Debug_Verbose, _T("CTransferSocket::OnConnect"));

	if (!m_pSocket) {
		controlSocket_.LogMessage(MessageType::Debug_Verbose, _T("CTransferSocket::OnConnect called without socket"));
		return;
	}

	if (!m_pBackend) {
		if (!InitBackend()) {
			TransferEnd(TransferEndReason::transfer_failure);
			return;
		}
	}
	else if (m_pTlsSocket) {
		// Re-enable Nagle algorithm
		m_pSocket->SetFlags(m_pSocket->GetFlags() & (~CSocket::flag_nodelay));
		if (CServerCapabilities::GetCapability(*controlSocket_.m_pCurrentServer, tls_resume) == unknown)	{
			CServerCapabilities::SetCapability(*controlSocket_.m_pCurrentServer, tls_resume, m_pTlsSocket->ResumedSession() ? yes : no);
		}
	}

	if (m_bActive) {
		TriggerPostponedEvents();
	}
}
예제 #2
0
void CTransferSocket::OnConnect()
{
	m_pControlSocket->SetAlive();
	m_pControlSocket->LogMessage(::Debug_Verbose, _T("CTransferSocket::OnConnect"));

	if (!m_pSocket)
	{
		m_pControlSocket->LogMessage(::Debug_Verbose, _T("CTransferSocket::OnConnect called without socket"));
		return;
	}

	if (!m_pBackend)
	{
		if (!InitBackend())
		{
			TransferEnd(transfer_failure);
			return;
		}
	}
	else if (m_pTlsSocket)
	{
		if (CServerCapabilities::GetCapability(*m_pControlSocket->m_pCurrentServer, tls_resume) == unknown)
		{
			CServerCapabilities::SetCapability(*m_pControlSocket->m_pCurrentServer, tls_resume, m_pTlsSocket->ResumedSession() ? yes : no);
		}
	}

	if (m_bActive)
		TriggerPostponedEvents();
}
예제 #3
0
PRoster::PRoster(BMessage *msg)
	:	PObject(msg)
{
	fType = "PRoster";
	fFriendlyType = "Roster";
	AddInterface("PRoster");
	InitBackend();
}
예제 #4
0
PRoster::PRoster(const PRoster &from)
	:	PObject(from)
{
	fType = "PRoster";
	fFriendlyType = "Roster";
	AddInterface("PRoster");
	InitMethods();
	InitBackend();
}
예제 #5
0
PRoster::PRoster(const char *name)
	:	PObject(name)
{
	fType = "PRoster";
	fFriendlyType = "Roster";
	AddInterface("PRoster");
	InitMethods();
	InitBackend();
}
예제 #6
0
PRoster::PRoster(void)
{
	fType = "PRoster";
	fFriendlyType = "Roster";
	AddInterface("PRoster");
	
	InitMethods();
	InitBackend();
}
예제 #7
0
PProgressBar::PProgressBar(const PProgressBar &from)
	:	PView(from, true)
{
	fType = "PProgressBar";
	fFriendlyType = "Progress Bar";
	AddInterface("PProgressBar");
	
	InitMethods();
	InitBackend();
}
예제 #8
0
PProgressBar::PProgressBar(const char *name)
	:	PView(name, true)
{
	fType = "PProgressBar";
	fFriendlyType = "Progress Bar";
	AddInterface("PProgressBar");
	
	InitMethods();
	InitBackend();
}
예제 #9
0
PProgressBar::PProgressBar(void)
	:	PView(true)
{
	fType = "PProgressBar";
	fFriendlyType = "Progress Bar";
	AddInterface("PProgressBar");
	
	InitBackend();
	InitProperties();
	InitMethods();
}
예제 #10
0
PLabel::PLabel(const PLabel &from)
	:	PView(from, true)

{
	fType = "PLabel";
	fFriendlyType = "Label";
	AddInterface("PLabel");
	
	InitMethods();
	InitBackend();
}
예제 #11
0
PDirectory::PDirectory(void)
	:	PNode()

{
	fType = "PDirectory";
	fFriendlyType = "Directory";
	AddInterface("PDirectory");
	
	InitBackend();
	InitMethods();
}
예제 #12
0
PDirectory::PDirectory(const PDirectory &from)
	:	PNode(from)

{
	fType = "PDirectory";
	fFriendlyType = "Directory";
	AddInterface("PDirectory");
	
	InitMethods();
	InitBackend();
}
예제 #13
0
PRadioButton::PRadioButton(const PRadioButton &from)
	:	PControl(from)

{
	fType = "PRadioButton";
	fFriendlyType = "RadioButton";
	AddInterface("PRadioButton");
	
	InitMethods();
	InitBackend();
}
예제 #14
0
PListView::PListView(void)
	:	PView(true)

{
	fType = "PListView";
	fFriendlyType = "List";
	AddInterface("PListView");
	
	InitBackend();
	InitMethods();
}
예제 #15
0
PDirectory::PDirectory(const char *name)
	:	PNode(name)

{
	fType = "PDirectory";
	fFriendlyType = "Directory";
	AddInterface("PDirectory");
	
	InitMethods();
	InitBackend();
}
예제 #16
0
PTextView::PTextView(const char *name)
	:	PView(name, true)

{
	fType = "PTextView";
	fFriendlyType = "Text Editor";
	AddInterface("PTextView");
	
	InitMethods();
	InitBackend();
}
예제 #17
0
PListView::PListView(const PListView &from)
	:	PView(from, true)

{
	fType = "PListView";
	fFriendlyType = "List";
	AddInterface("PListView");
	
	InitMethods();
	InitBackend();
}
예제 #18
0
PTextView::PTextView(void)
	:	PView(true)

{
	fType = "PTextView";
	fFriendlyType = "Text Editor";
	AddInterface("PTextView");
	
	InitBackend();
	InitMethods();
}
예제 #19
0
PTextView::PTextView(const PTextView &from)
	:	PView(from, true)

{
	fType = "PTextView";
	fFriendlyType = "Text Editor";
	AddInterface("PTextView");
	
	InitMethods();
	InitBackend();
}
예제 #20
0
PLabel::PLabel(const char *name)
	:	PView(name, true)

{
	fType = "PLabel";
	fFriendlyType = "Label";
	AddInterface("PLabel");
	
	InitMethods();
	InitBackend();
}
예제 #21
0
PMenuItem::PMenuItem(void)
	:	PObject()

{
	fType = "PMenuItem";
	fFriendlyType = "MenuItem";
	AddInterface("PMenuItem");
	
	InitBackend();
	InitMethods();
}
예제 #22
0
PListView::PListView(const char *name)
	:	PView(name, true)

{
	fType = "PListView";
	fFriendlyType = "List";
	AddInterface("PListView");
	
	InitMethods();
	InitBackend();
}
예제 #23
0
PLabel::PLabel(void)
	:	PView(true)

{
	fType = "PLabel";
	fFriendlyType = "Label";
	AddInterface("PLabel");
	
	InitBackend();
	InitMethods();
}
예제 #24
0
PRadioButton::PRadioButton(const char *name)
	:	PControl(name)

{
	fType = "PRadioButton";
	fFriendlyType = "RadioButton";
	AddInterface("PRadioButton");
	
	InitMethods();
	InitBackend();
}
예제 #25
0
PRadioButton::PRadioButton(void)
	:	PControl()

{
	fType = "PRadioButton";
	fFriendlyType = "RadioButton";
	AddInterface("PRadioButton");
	
	InitBackend();
	InitMethods();
}
예제 #26
0
PMenuItem::PMenuItem(const PMenuItem &from)
	:	PObject(from)

{
	fType = "PMenuItem";
	fFriendlyType = "MenuItem";
	AddInterface("PMenuItem");
	
	InitMethods();
	InitBackend();
}
예제 #27
0
PMenuItem::PMenuItem(const char *name)
	:	PObject(name)

{
	fType = "PMenuItem";
	fFriendlyType = "MenuItem";
	AddInterface("PMenuItem");
	
	InitMethods();
	InitBackend();
}
예제 #28
0
PDirectory::PDirectory(BMessage *msg)
	:	PNode(msg)

{
	fType = "PDirectory";
	fFriendlyType = "Directory";
	AddInterface("PDirectory");
	
	
	
	InitBackend();
}
예제 #29
0
PMenuItem::PMenuItem(BMessage *msg)
	:	PObject(msg)

{
	fType = "PMenuItem";
	fFriendlyType = "MenuItem";
	AddInterface("PMenuItem");
	
	
	
	InitBackend();
}
예제 #30
0
PProgressBar::PProgressBar(BMessage *msg)
	:	PView(msg, true)
{
	fType = "PProgressBar";
	fFriendlyType = "Progress Bar";
	AddInterface("PProgressBar");
	
	BMessage viewmsg;
	if (msg->FindMessage("backend", &viewmsg) == B_OK)
		fView = (BView*)PProgressBarBackend::Instantiate(&viewmsg);

	
	InitBackend();
}