예제 #1
0
    public async Task Greeting(GreetingData data)
    {
        Console.WriteLine("{0} said: {1} ", data.From, data.Message);

        if (data.Count >= 3)
        {
            return;
        }

        var fromGrain = GrainFactory.GetGrain <IEmployee>(data.From);
        await fromGrain.Greeting(new GreetingData {
            From    = this.GetPrimaryKey(),
            Message = "Thanks!",
            Count   = data.Count + 1
        });
    }
예제 #2
0
 /// <summary>
 /// 发送消息
 /// </summary>
 /// <param name="from"></param>
 /// <param name="message"></param>
 /// <returns></returns>
 public async Task Greeting(GreetingData data)
 {
     Console.WriteLine("{0} said: {1}", data.From, data.Message);
     //停止重复发送
     if (data.Count >= 3)
     {
         return;
     }
     //发送消息
     var formGrain = GrainFactory.GetGrain <IEmployee>(data.From);
     await formGrain.Greeting(new GreetingData
     {
         From    = this.GetPrimaryKeyString(),
         Message = "谢谢!",
         Count   = data.Count + 1
     });
 }
예제 #3
0
    /// <summary>
    /// Reads the greetings json and stores them into text assets.
    /// </summary>
    List <Greeting> ReadGreetings()
    {
        GreetingData loadedData = new GreetingData();
        string       filePath   = Path.Combine(Application.streamingAssetsPath, "Greetings.json");

        Debug.Log("Path:" + filePath);
        if (File.Exists(filePath))
        {
            string dataAsJson = File.ReadAllText(filePath);
            loadedData = JsonUtility.FromJson <GreetingData>(dataAsJson);
        }
        else
        {
            Debug.LogError("Cannot find file!");
        }

        return(loadedData.ConvertToGreeting());
    }
예제 #4
0
        public async Task Greeting(GreetingData data)
        {
            Console.WriteLine("{0} said: {1}", data.From, data.Message);

            // stop this from repeating endlessly
            if (data.Count >= 3)
            {
                return;
            }

            // send a message back to the sender
            var fromGrain = GrainFactory.GetGrain <IEmployee>(data.From);
            await fromGrain.Greeting(new GreetingData
            {
                From    = this.GetPrimaryKey(),
                Message = "Thanks!",
                Count   = data.Count + 1
            });
        }
예제 #5
0
    public async Task AddDirectReport(IEmployee employee)
    {
        if (State.Reports == null)
        {
            State.Reports = new List <IEmployee>();
        }

        State.Reports.Add(employee);
        await employee.SetManager(this);

        await employee.SetManager(this);

        var data = new GreetingData {
            From = this.GetPrimaryKey(), Message = "Welcome to my team!"
        };
        await employee.Greeting(data);

        Console.WriteLine("{0} said: {1}", data.From.ToString(), data.Message);

        await base.WriteStateAsync();
    }
예제 #6
0
 public HelloWorldAPIController()
 {
     this.myGreeting = new GreetingData();
 }
예제 #7
0
 public Task Greeting(GreetingData data)
 {
     throw new NotImplementedException();
 }