8000 Home · lyakhov/melange Wiki · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Fedor Lyakhov edited this page Jan 17, 2014 · 8 revisions

Welcome to the melange wiki!

RPC mechanism options for Melange

Apache Thrift-based services

  • (+) Easy to implement prototypes as Thrift generates most of the glue code, including server and client
  • (-) Doesn't support signals out of the box
  • (-) Isn't really flexible - or requires rewrite of many components

Private D-Bus connections

  • Peer-to-peer
  • Multiple clients - single server

D-Bus bus pass-through

Options on direction from client to virtual guest PoV, for session or system bus:

  • Client bus passed to guest
  • Represent client bus as a new additional guest bus
  • Merge client and guest buses at the guest, represent client services under different names (namespaced like e.g. remote.org.example.Service for actual org.example.Service)
  • Replace some services at the guest bus with remote ones from client bus (configurable?)

Also there is a set of options with client and guest swapped.

Coding guidelines

Naming policies

  • File and directory names: lowercase, dash-separated words. E.g. get-webrtc.py, main-window.cpp
  • CMake variables (assigned via "set"): uppercase, underscore-separated. E.g. MY_FANCY_VARIABLE

Source formatting

  • Indentation: tab
  • Padding around operators: yes
  • Padding around brackets '(': no
  • Indent namespace, case of switch: no
  • Opening curly bracket position for code block: at the same line if(a) {
  • Opening curly bracket position for function or class definition: at the new line
0