{"action":"created","issue":{"url":"https://api.github.com/repos/yevhen/Orleankka/issues/55","labels_url":"https://api.github.com/repos/yevhen/Orleankka/issues/55/labels{/name}","comments_url":"https://api.github.com/repos/yevhen/Orleankka/issues/55/comments","events_url":"https://api.github.com/repos/yevhen/Orleankka/issues/55/events","html_url":"https://github.com/yevhen/Orleankka/issues/55","id":93162653,"number":55,"title":"Strong typed actor interface in client project","user":{"login":"DarkHarlock","id":9002914,"avatar_url":"https://avatars.githubusercontent.com/u/9002914?v=3","gravatar_id":"","url":"https://api.github.com/users/DarkHarlock","html_url":"https://github.com/DarkHarlock","followers_url":"https://api.github.com/users/DarkHarlock/followers","following_url":"https://api.github.com/users/DarkHarlock/following{/other_user}","gists_url":"https://api.github.com/users/DarkHarlock/gists{/gist_id}","starred_url":"https://api.github.com/users/DarkHarlock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DarkHarlock/subscriptions","organizations_url":"https://api.github.com/users/DarkHarlock/orgs","repos_url":"https://api.github.com/users/DarkHarlock/repos","events_url":"https://api.github.com/users/DarkHarlock/events{/privacy}","received_events_url":"https://api.github.com/users/DarkHarlock/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-07-06T00:49:22Z","updated_at":"2015-07-06T20:38:49Z","closed_at":null,"body":"I've tryed Orlenkka, it is awesome but it lacks of 2 features (maybe there are but I haven't found these).\r\n1. The possibility to have a strong typed proxy in the client side project. I love intellisense, and an Ask or Tell method that take object as parameter doesn't help code writing, the same is for the return value of Ask.\r\n2. To have a common lib with only contracts shared between client and server. I need to share contracts with third parts without any server implementation detail.\r\n\r\nIn my public repo I've added an example on how to achieve this. \r\nIt requires some patches in Orleankka library (ActorAssembly, Dispatcher, ActorTypeCode and ActorPrototype) and some new interfaces. \r\nThe Client side uses Castle.DinamcProxy to generate on the fly a proxy that implements the actor interface. This proxy forwards messages to an internal ActorRef. \r\nThe server side uses the improved ActorTypeCode and 2 new interfaces (IActorProxyInterface, INonUniformActorProxyInterface). Patches in Dispatcher and ActorAssembly do the magic.\r\n\r\nIs it the right way to reach my goal with Orleankka? There are other ways?"},"comment":{"url":"https://api.github.com/repos/yevhen/Orleankka/issues/comments/118992013","html_url":"https://github.com/yevhen/Orleankka/issues/55#issuecomment-118992013","issue_url":"https://api.github.com/repos/yevhen/Orleankka/issues/55","id":118992013,"user":{"login":"DarkHarlock","id":9002914,"avatar_url":"https://avatars.githubusercontent.com/u/9002914?v=3","gravatar_id":"","url":"https://api.github.com/users/DarkHarlock","html_url":"https://github.com/DarkHarlock","followers_url":"https://api.github.com/users/DarkHarlock/followers","following_url":"https://api.github.com/users/DarkHarlock/following{/other_user}","gists_url":"https://api.github.com/users/DarkHarlock/gists{/gist_id}","starred_url":"https://api.github.com/users/DarkHarlock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DarkHarlock/subscriptions","organizations_url":"https://api.github.com/users/DarkHarlock/orgs","repos_url":"https://api.github.com/users/DarkHarlock/repos","events_url":"https://api.github.com/users/DarkHarlock/events{/privacy}","received_events_url":"https://api.github.com/users/DarkHarlock/received_events","type":"User","site_admin":false},"created_at":"2015-07-06T20:38:48Z","updated_at":"2015-07-06T20:38:48Z","body":"Yes, I can wait for this implementation. \r\nI've already done a little working playground with Orleans so most of the code is written. Now I will try to translate grains in actors adding real CQRS/ES and dependency injection implementation.\r\n\r\nWaiting for news, thanks for suggestions.\r\n\r\n\r\n\r\n\r\n"}}