using Telligent.Evolution.Extensibility; using Telligent.Evolution.Extensibility.Api; using Telligent.Evolution.Extensibility.Api.Version1; using Telligent.Evolution.Extensibility.Version1; namespace Samples { #region Our API Interface public interface IPersonService : Telligent.Evolution.Extensibility.Api.IApi { string GetRandomName(); } #endregion #region Our API Class Implementation of IAPI public class PersonService : IPersonService { public string GetRandomName() { return "Wally"; } } #endregion #region IApiDefinition Plugin public class SampleAPIDefinition : IApiDefinition { #region IApiDefinition Members public void RegisterApi(IApiController controller) { //Invoke add on the controller and provide an instance of your class controller.Add(new PersonService()); } #endregion #region IPlugin Members public string Name { get { return "Sample API Definition"; } } public string Description { get { return "A sample API registration plugin"; } } public void Initialize() { var personAPI = Telligent.Evolution.Extensibility.Apis.Get(); var eventLogApi = Telligent.Evolution.Extensibility.Apis.Get(); if (personAPI != null && eventLogApi != null) { //Simply write to the event log eventLogApi.Write("Random Name:" + personAPI.GetRandomName(), new EventLogEntryWriteOptions()); } } #endregion } #endregion }