{"action":"created","issue":{"url":"https://api.github.com/repos/apache/incubator-reef/issues/149","labels_url":"https://api.github.com/repos/apache/incubator-reef/issues/149/labels{/name}","comments_url":"https://api.github.com/repos/apache/incubator-reef/issues/149/comments","events_url":"https://api.github.com/repos/apache/incubator-reef/issues/149/events","html_url":"https://github.com/apache/incubator-reef/pull/149","id":69024414,"number":149,"title":"[Reef-257] Memory Efficient Wake Transport Layer","user":{"login":"dkm2110","id":151031,"avatar_url":"https://avatars.githubusercontent.com/u/151031?v=3","gravatar_id":"","url":"https://api.github.com/users/dkm2110","html_url":"https://github.com/dkm2110","followers_url":"https://api.github.com/users/dkm2110/followers","following_url":"https://api.github.com/users/dkm2110/following{/other_user}","gists_url":"https://api.github.com/users/dkm2110/gists{/gist_id}","starred_url":"https://api.github.com/users/dkm2110/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dkm2110/subscriptions","organizations_url":"https://api.github.com/users/dkm2110/orgs","repos_url":"https://api.github.com/users/dkm2110/repos","events_url":"https://api.github.com/users/dkm2110/events{/privacy}","received_events_url":"https://api.github.com/users/dkm2110/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":37,"created_at":"2015-04-16T22:45:45Z","updated_at":"2015-05-01T17:47:47Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apache/incubator-reef/pulls/149","html_url":"https://github.com/apache/incubator-reef/pull/149","diff_url":"https://github.com/apache/incubator-reef/pull/149.diff","patch_url":"https://github.com/apache/incubator-reef/pull/149.patch"},"body":"@markusweimer @jwang98052 @beysims \r\n\r\nI have made the Transport Layer write directly to the stream. Files to look out for are:\r\n\r\nIWritable.cs\r\nIType.cs\r\nSerializableTransportServer.cs\r\nSerializableTransportClient.cs\r\nSerializableLink.cs\r\n\r\nin Wake.Remote and\r\n\r\nSerializableTransportTest in Wake.Test.\r\n\r\nI am not sure how to combine and make one transport class, since I place a constraint on T to be IWritable and IType.One option is to create another combined interface IWritableOrCodec that has both ICodec and IWritable. We can create this interface and fill it with one of ICodec or IWritable depending on what user has specified. \r\n\r\nAlternately, we still maintain 2 classes, but TransportServer or Client are just dummy classes that convert Codec and Data  to Writable. I am not sure the implication of this since I will need to convert corresponding observators also form non writable to Writable ones. This seems a messier route to me.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/apache/incubator-reef/issues/comments/98186213","html_url":"https://github.com/apache/incubator-reef/pull/149#issuecomment-98186213","issue_url":"https://api.github.com/repos/apache/incubator-reef/issues/149","id":98186213,"user":{"login":"markusweimer","id":502371,"avatar_url":"https://avatars.githubusercontent.com/u/502371?v=3","gravatar_id":"","url":"https://api.github.com/users/markusweimer","html_url":"https://github.com/markusweimer","followers_url":"https://api.github.com/users/markusweimer/followers","following_url":"https://api.github.com/users/markusweimer/following{/other_user}","gists_url":"https://api.github.com/users/markusweimer/gists{/gist_id}","starred_url":"https://api.github.com/users/markusweimer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markusweimer/subscriptions","organizations_url":"https://api.github.com/users/markusweimer/orgs","repos_url":"https://api.github.com/users/markusweimer/repos","events_url":"https://api.github.com/users/markusweimer/events{/privacy}","received_events_url":"https://api.github.com/users/markusweimer/received_events","type":"User","site_admin":false},"created_at":"2015-05-01T17:47:47Z","updated_at":"2015-05-01T17:47:47Z","body":"@beysims, @jwang98052 and I spoke offline. We will proceed with the merge and file a JIRA for the tests."}}