Protobufs compile
This commit is contained in:
parent
9354c0b27b
commit
6503d2c410
@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Grpc.Tools.1.21.0\build\Grpc.Tools.props" Condition="Exists('..\packages\Grpc.Tools.1.21.0\build\Grpc.Tools.props')" />
|
||||
<Import Project="..\packages\Xamarin.Forms.3.6.0.344457\build\Xamarin.Forms.props" Condition="Exists('..\packages\Xamarin.Forms.3.6.0.344457\build\Xamarin.Forms.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@ -110,6 +111,19 @@
|
||||
<Reference Include="LibVLCSharp.Forms.Platforms.GTK">
|
||||
<HintPath>..\packages\LibVLCSharp.Forms.GTK.3.0.0\lib\net47\LibVLCSharp.Forms.Platforms.GTK.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Google.Protobuf">
|
||||
<HintPath>..\packages\Google.Protobuf.3.8.0\lib\net45\Google.Protobuf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Interactive.Async">
|
||||
<HintPath>..\packages\System.Interactive.Async.3.2.0\lib\net46\System.Interactive.Async.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Grpc.Core.Api">
|
||||
<HintPath>..\packages\Grpc.Core.Api.1.21.0\lib\net45\Grpc.Core.Api.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Grpc.Core">
|
||||
<HintPath>..\packages\Grpc.Core.1.21.0\lib\net45\Grpc.Core.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="gtk-gui\gui.stetic">
|
||||
@ -463,4 +477,6 @@
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="..\packages\Xamarin.Forms.3.6.0.344457\build\Xamarin.Forms.targets" Condition="Exists('..\packages\Xamarin.Forms.3.6.0.344457\build\Xamarin.Forms.targets')" />
|
||||
<Import Project="..\packages\VideoLAN.LibVLC.Mac.3.1.2\build\VideoLAN.LibVLC.Mac.targets" Condition="Exists('..\packages\VideoLAN.LibVLC.Mac.3.1.2\build\VideoLAN.LibVLC.Mac.targets')" />
|
||||
<Import Project="..\packages\Grpc.Tools.1.21.0\build\Grpc.Tools.targets" Condition="Exists('..\packages\Grpc.Tools.1.21.0\build\Grpc.Tools.targets')" />
|
||||
<Import Project="..\packages\Grpc.Core.1.21.0\build\net45\Grpc.Core.targets" Condition="Exists('..\packages\Grpc.Core.1.21.0\build\net45\Grpc.Core.targets')" />
|
||||
</Project>
|
@ -1,5 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Google.Protobuf" version="3.8.0" targetFramework="net47" />
|
||||
<package id="Grpc" version="1.21.0" targetFramework="net47" />
|
||||
<package id="Grpc.Core" version="1.21.0" targetFramework="net47" />
|
||||
<package id="Grpc.Core.Api" version="1.21.0" targetFramework="net47" />
|
||||
<package id="Grpc.Tools" version="1.21.0" targetFramework="net47" developmentDependency="true" />
|
||||
<package id="LibVLCSharp" version="3.0.0" targetFramework="net47" />
|
||||
<package id="LibVLCSharp.Forms" version="3.0.0" targetFramework="net47" />
|
||||
<package id="LibVLCSharp.Forms.GTK" version="3.0.0" targetFramework="net47" />
|
||||
@ -7,6 +12,7 @@
|
||||
<package id="Microsoft.Bcl" version="1.1.8" targetFramework="net47" />
|
||||
<package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net47" />
|
||||
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net47" />
|
||||
<package id="System.Interactive.Async" version="3.2.0" targetFramework="net47" />
|
||||
<package id="System.Reflection" version="4.3.0" targetFramework="net47" />
|
||||
<package id="System.Reflection.TypeExtensions" version="4.4.0" targetFramework="net47" />
|
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.3.0" targetFramework="net47" />
|
||||
|
@ -1,43 +1,94 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<ProduceAssemblyReference>true</ProduceAssemblyReference>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Xamarin.Forms" Version="3.6.0.264807" />
|
||||
<PackageReference Include="Xamarin.Essentials" Version="1.0.1" />
|
||||
<PackageReference Include="Xamarin.Forms.DataGrid" Version="3.1.0" />
|
||||
<PackageReference Include="taglib-sharp-netstandard2.0" Version="2.1.0" />
|
||||
<PackageReference Include="LibVLCSharp.Forms" Version="3.0.0" />
|
||||
<PackageReference Include="VideoLAN.LibVLC.Mac" Version="3.1.3" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Frontend\" />
|
||||
<Folder Include="Backend\" />
|
||||
<Folder Include="Frontend\Components\" />
|
||||
<Folder Include="Frontend\Views\" />
|
||||
<Folder Include="Frontend\Views\Songs\" />
|
||||
<Folder Include="Frontend\Views\MainView\" />
|
||||
<Folder Include="Frontend\Behaviors\" />
|
||||
<Folder Include="Frontend\Components\NavigationMenu\" />
|
||||
<Folder Include="Frontend\Views\Albums\" />
|
||||
<Folder Include="Frontend\Views\Artists\" />
|
||||
<Folder Include="Frontend\Views\Stations\" />
|
||||
<Folder Include="Frontend\Components\MusicPlayer\" />
|
||||
<Folder Include="Backend\Utils\" />
|
||||
<Folder Include="Backend\Models\" />
|
||||
<Folder Include="Backend\Services\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Update="Frontend\Components\MusicPlayer\Player.xaml.cs">
|
||||
<DependentUpon>Player.xaml</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Project
|
||||
Sdk="Microsoft.NET.Sdk">
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<ProduceAssemblyReference>true</ProduceAssemblyReference>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup
|
||||
Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference
|
||||
Include="Xamarin.Forms"
|
||||
Version="3.6.0.264807"/>
|
||||
<PackageReference
|
||||
Include="Xamarin.Essentials"
|
||||
Version="1.0.1"/>
|
||||
<PackageReference
|
||||
Include="Xamarin.Forms.DataGrid"
|
||||
Version="3.1.0"/>
|
||||
<PackageReference
|
||||
Include="taglib-sharp-netstandard2.0"
|
||||
Version="2.1.0"/>
|
||||
<PackageReference
|
||||
Include="LibVLCSharp.Forms"
|
||||
Version="3.0.0"/>
|
||||
<PackageReference
|
||||
Include="VideoLAN.LibVLC.Mac"
|
||||
Version="3.1.3"/>
|
||||
<PackageReference
|
||||
Include="Grpc"
|
||||
Version="1.21.0"/>
|
||||
<PackageReference
|
||||
Include="Grpc.Tools"
|
||||
Version="1.21.0"
|
||||
PrivateAssests="All"/>
|
||||
<PackageReference
|
||||
Include="Google.Protobuf"
|
||||
Version="3.8.0"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder
|
||||
Include="Frontend\"/>
|
||||
<Folder
|
||||
Include="Backend\"/>
|
||||
<Folder
|
||||
Include="Frontend\Components\"/>
|
||||
<Folder
|
||||
Include="Frontend\Views\"/>
|
||||
<Folder
|
||||
Include="Frontend\Views\Songs\"/>
|
||||
<Folder
|
||||
Include="Frontend\Views\MainView\"/>
|
||||
<Folder
|
||||
Include="Frontend\Behaviors\"/>
|
||||
<Folder
|
||||
Include="Frontend\Components\NavigationMenu\"/>
|
||||
<Folder
|
||||
Include="Frontend\Views\Albums\"/>
|
||||
<Folder
|
||||
Include="Frontend\Views\Artists\"/>
|
||||
<Folder
|
||||
Include="Frontend\Views\Stations\"/>
|
||||
<Folder
|
||||
Include="Backend\Utils\"/>
|
||||
<Folder
|
||||
Include="Backend\Models\"/>
|
||||
<Folder
|
||||
Include="Backend\Services\"/>
|
||||
<Folder
|
||||
Include="Frontend\Views\Party\"/>
|
||||
<Folder
|
||||
Include="Frontend\Components\HostSelector\"/>
|
||||
<Folder
|
||||
Include="Frontend\Components\MemberList\"/>
|
||||
<Folder
|
||||
Include="Frontend\Components\Queue\"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile
|
||||
Update="Frontend\Components\MusicPlayer\Player.xaml.cs">
|
||||
<DependentUpon>Player.xaml</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Protobuf
|
||||
Include="Backend\Proto\PartyService\party.proto"/>
|
||||
<Protobuf
|
||||
Include="Backend\Proto\PlaybackService\playback.proto"/>
|
||||
<Protobuf
|
||||
Include="Backend\Proto\general.proto"/>
|
||||
</ItemGroup>
|
||||
</Project>
|
34
Aurora/Backend/Proto/PartyService/party.proto
Normal file
34
Aurora/Backend/Proto/PartyService/party.proto
Normal file
@ -0,0 +1,34 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package Aurora.Backend.Proto;
|
||||
|
||||
// PartyServic definition
|
||||
service PartyService{
|
||||
//Party Service
|
||||
rpc JoinParty(JoinPartyRequest) returns (JoinPartyResponse);
|
||||
rpc LeaveParty(LeavePartyRequest) returns (LeavePartyResponse);
|
||||
}
|
||||
|
||||
message JoinPartyRequest {
|
||||
string clientId = 1;
|
||||
string userName = 2;
|
||||
string ipAddress = 3;
|
||||
string port = 4;
|
||||
}
|
||||
|
||||
message JoinPartyResponse {
|
||||
PartyJoinedStatusEnum status = 1;
|
||||
}
|
||||
|
||||
message LeavePartyRequest {
|
||||
string clientId = 1;
|
||||
}
|
||||
|
||||
message LeavePartyResponse {
|
||||
PartyJoinedStatusEnum status = 1;
|
||||
}
|
||||
|
||||
enum PartyJoinedStatusEnum {
|
||||
Connected = 0;
|
||||
Disconnected = 1;
|
||||
}
|
21
Aurora/Backend/Proto/PlaybackService/playback.proto
Normal file
21
Aurora/Backend/Proto/PlaybackService/playback.proto
Normal file
@ -0,0 +1,21 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package Aurora.Backend.Proto;
|
||||
|
||||
import "Backend/Proto/general.proto";
|
||||
|
||||
service PlaybackService {
|
||||
//Playback Service
|
||||
rpc GetPartyStream(Empty) returns (stream Chunk) {};
|
||||
}
|
||||
|
||||
enum TransferStatusCode {
|
||||
Unknown = 0;
|
||||
Ok = 1;
|
||||
Failed = 2;
|
||||
}
|
||||
|
||||
message TransferStatus {
|
||||
string Message = 1;
|
||||
TransferStatusCode Code = 2;
|
||||
}
|
10
Aurora/Backend/Proto/general.proto
Normal file
10
Aurora/Backend/Proto/general.proto
Normal file
@ -0,0 +1,10 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package Aurora.Backend.Proto;
|
||||
|
||||
message Chunk {
|
||||
bytes Content = 1;
|
||||
}
|
||||
|
||||
message Empty{
|
||||
}
|
10
Aurora/Backend/Services/Server/PartyServiceImpl.cs
Normal file
10
Aurora/Backend/Services/Server/PartyServiceImpl.cs
Normal file
@ -0,0 +1,10 @@
|
||||
using System;
|
||||
using Aurora.Backend.Proto;
|
||||
|
||||
namespace Aurora.Backend.Services.Server
|
||||
{
|
||||
class PartyServiceImpl : PartyService.PartyServiceBase
|
||||
{
|
||||
|
||||
}
|
||||
}
|
10
Aurora/Backend/Services/Server/PlaybackServiceImpl.cs
Normal file
10
Aurora/Backend/Services/Server/PlaybackServiceImpl.cs
Normal file
@ -0,0 +1,10 @@
|
||||
using System;
|
||||
using Aurora.Backend.Proto;
|
||||
|
||||
namespace Aurora.Backend.Services.Server
|
||||
{
|
||||
class PlaybackServiceImpl : PlaybackService.PlaybackServiceBase
|
||||
{
|
||||
|
||||
}
|
||||
}
|
28
Aurora/Backend/Services/Server/ServerService.cs
Normal file
28
Aurora/Backend/Services/Server/ServerService.cs
Normal file
@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using Grpc.Core;
|
||||
using Aurora.Backend.Proto;
|
||||
|
||||
namespace Aurora.Backend.Services.Server
|
||||
{
|
||||
public class ServerService : BaseService<ServerService>
|
||||
{
|
||||
const int Port = 50051;
|
||||
public ServerService()
|
||||
{
|
||||
Grpc.Core.Server server = new Grpc.Core.Server
|
||||
{
|
||||
Services = {
|
||||
PartyService.BindService(new PartyServiceImpl()),
|
||||
PlaybackService.BindService(new PlaybackServiceImpl()) },
|
||||
Ports = { new ServerPort("localhost", Port, ServerCredentials.Insecure) }
|
||||
};
|
||||
server.Start();
|
||||
|
||||
Console.WriteLine("Aurora server listening on port " + Port);
|
||||
Console.WriteLine("Press any key to stop the server...");
|
||||
Console.ReadKey();
|
||||
|
||||
server.ShutdownAsync().Wait();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user