/// <summary> /// Returns real-time Google Analytics data for a view (profile). /// https://developers.google.com/analytics/devguides/reporting/realtime/v3/reference/data/realtime/get /// /// /// Beta: /// The Real Time Reporting API is currently available as a developer preview in limited beta. If you're interested in signing up, request access to the beta. /// https://docs.google.com/forms/d/1qfRFysCikpgCMGqgF3yXdUyQW4xAlLyjKuOoOEFN2Uw/viewform /// Apply for access wait 24 hours and then try you will not hear from Google when you have been approved. /// /// Documentation: Dimension and metric reference https://developers.google.com/analytics/devguides/reporting/realtime/dimsmets/ /// </summary> /// <param name="service">Valid authenticated Google analytics service</param> /// <param name="profileId">Profile id to request data from </param> /// <param name="metrics">Valid Real time Metrics (Required)</param> /// <param name="optionalValues">Optional values can be null</param> /// <returns>https://developers.google.com/analytics/devguides/reporting/realtime/v3/reference/data/realtime#resource</returns> public static RealtimeData Get(AnalyticsService service, string profileId, string metrics, OptionalValues optionalValues) { try { DataResource.RealtimeResource.GetRequest request = service.Data.Realtime.Get(String.Format("ga:{0}", profileId), metrics); request.MaxResults = 10000; if (optionalValues != null) { request.Dimensions = optionalValues.Dimensions; request.Sort = optionalValues.Sort; request.Filters = optionalValues.Filter; } RealtimeData feed = request.Execute(); return feed; } catch (Exception ex) { Console.WriteLine(ex.Message); return null; } }
public IniProperty(IniProperty p) { Key = p.Key; Value = p.Value; Comments.AddRange(p.Comments); OptionalValues.AddRange(p.OptionalValues); }
public bool IsOptionalValue(string enumCode) { bool isOptionalValue = false; if (OptionalValues != null && OptionalValues.Count != 0) { isOptionalValue = OptionalValues.Contains(enumCode); } return(isOptionalValue); }
public static void WriteOptionals(string expectedHex, bool hasUtf8, bool hasIa5) { var data = new OptionalValues { Utf8String = hasUtf8 ? "UTF8" : null, IA5String = hasIa5 ? "IA5" : null, }; AsnWriter writer = AsnSerializer.Serialize(data, AsnEncodingRules.DER); Assert.Equal(expectedHex, writer.Encode().ByteArrayToHex()); }
public static void TooMuchDataForValue() { // Two empty sequences, which is more data than one OptionalValues value. byte[] inputData = "30003000".HexToByteArray(); OptionalValues parsed = AsnSerializer.Deserialize <OptionalValues>( inputData, AsnEncodingRules.BER, out int bytesRead); Assert.NotNull(parsed); Assert.Equal(2, bytesRead); Assert.Throws <CryptographicException>( () => AsnSerializer.Deserialize <OptionalValues>(inputData, AsnEncodingRules.BER)); }
public static Events list(CalendarService service, string id, OptionalValues optionalValues) { var request = service.Events.List(id); if (optionalValues == null) { request.MaxResults = 100; } else { request.MaxResults = optionalValues.MaxResults; request.ShowDeleted = optionalValues.ShowDeleted; } return(ProcessResults(request)); }
/// <summary> /// Lists all the datasets in the specified project to which the caller has read access; however, a project owner can list (but not necessarily get) all datasets in his project. /// /// Documentation: https://cloud.google.com/bigquery/docs/reference/v2/datasets/list /// </summary> /// <param name="service"></param> /// <param name="projectId"></param> /// <param name="optionalValues"></param> /// <returns></returns> public static DatasetList list(BigqueryService service, string projectId, OptionalValues optionalValues) { var request = service.Datasets.List(projectId); if (optionalValues == null) { request.MaxResults = 100; } else { request.MaxResults = optionalValues.MaxResults; request.All = optionalValues.ShowHidden; } return(ProcessResults(request)); }
public static CalendarList list(CalendarService service, OptionalValues optionalValues) { var request = service.CalendarList.List(); if (optionalValues == null) { request.MaxResults = 100; } else { request.MaxResults = optionalValues.MaxResults; request.ShowDeleted = optionalValues.ShowDeleted; request.ShowHidden = optionalValues.ShowHidden; request.MinAccessRole = optionalValues.MinAccessRole; } return(ProcessResults(request)); }
public void Should_serialize_optional_null_values() { var model = new OptionalValues { OptionalReferenceTypeProperty = null, OptionalNullableTypeProperty = null, OptionalReferenceTypeField = null, OptionalNullableTypeField = null }; var result = Serialize.Json(model, x => x.IncludePublicFields() .Serialization(s => s.IncludeNullMembers())); result.ShouldEqual("{" + "\"OptionalReferenceTypeProperty\":null," + "\"OptionalNullableTypeProperty\":null," + "\"OptionalReferenceTypeField\":null," + "\"OptionalNullableTypeField\":null" + "}"); }
/// <summary> /// Lists all the datasets in the specified project to which the caller has read access; however, a project owner can list (but not necessarily get) all datasets in his project. /// /// Documentation: https://cloud.google.com/bigquery/docs/reference/v2/datasets/list /// </summary> /// <param name="service"></param> /// <param name="projectId"></param> /// <param name="optionalValues"></param> /// <returns></returns> public static DatasetList list(BigqueryService service, string projectId, OptionalValues optionalValues) { var request = service.Datasets.List(projectId); if (optionalValues == null) { request.MaxResults = 100; } else { request.MaxResults = optionalValues.MaxResults; request.All = optionalValues.ShowHidden; } return ProcessResults(request); }
public static CalendarList list(CalendarService service, OptionalValues optionalValues) { var request = service.CalendarList.List(); if (optionalValues == null) { request.MaxResults = 100; } else { request.MaxResults = optionalValues.MaxResults; request.ShowDeleted = optionalValues.ShowDeleted; request.ShowHidden = optionalValues.ShowHidden; request.MinAccessRole = optionalValues.MinAccessRole; } return ProcessResults(request); }
public void Should_serialize_optional_values() { var model = new OptionalValues { OptionalReferenceTypeProperty = "fark", OptionalValueTypeProperty = 5, OptionalNullableTypeProperty = 6, OptionalReferenceTypeField = "farker", OptionalValueTypeField = 7, OptionalNullableTypeField = 8 }; var result = Serialize.Json(model, x => x.IncludePublicFields()); result.ShouldEqual("{" + "\"OptionalReferenceTypeProperty\":\"fark\"," + "\"OptionalValueTypeProperty\":5," + "\"OptionalNullableTypeProperty\":6," + "\"OptionalReferenceTypeField\":\"farker\"," + "\"OptionalValueTypeField\":7," + "\"OptionalNullableTypeField\":8" + "}"); }
public void Should_serialize_optional_null_values() { var model = new OptionalValues { OptionalReferenceTypeProperty = null, OptionalNullableTypeProperty = null, OptionalReferenceTypeField = null, OptionalNullableTypeField = null }; var result = Serialize.Json(model, x => x.IncludePublicFields() .Serialization(s => s.IncludeNullMembers())); result.ShouldEqual("{" + "\"OptionalReferenceTypeProperty\":null," + "\"OptionalNullableTypeProperty\":null," + "\"OptionalReferenceTypeField\":null," + "\"OptionalNullableTypeField\":null" + "}"); }
/// <summary> /// You query the Core Reporting API for Google Analytics report data. /// Documentation: https://developers.google.com/analytics/devguides/reporting/core/v3/reference /// /// Dimension and metric reference : https://developers.google.com/analytics/devguides/reporting/core/dimsmets /// </summary> /// <param name="service">Valid Authenticated AnalyticsServicve </param> /// <param name="ProfileId">The unique table ID of the form XXXX, where XXXX is the Analytics view (profile) ID for which the query will retrieve the data. </param> /// <param name="StartDate">Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="EndDate">End date for fetching Analytics data. Request can specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="Metrics">A list of comma-separated metrics, such as ga:sessions,ga:bounces. </param> /// <param name="optionalValues">Optional values can be null </param> /// <returns></returns> public static GaData Get(AnalyticsService service, string profileId, string startDate, string endDate, string metrics, OptionalValues optionalValues) { DataResource.GaResource.GetRequest request = service.Data.Ga.Get(String.Format("ga:{0}", profileId), startDate, endDate, metrics); if (optionalValues == null) { request.MaxResults = 1000; } else { request.MaxResults = optionalValues.MaxResults; request.Dimensions = optionalValues.Dimensions; request.SamplingLevel = optionalValues.Sampling; request.Segment = optionalValues.Segment; request.Sort = optionalValues.Sort; request.Filters = optionalValues.Filter; } return(ProcessResults(request)); }
/// <summary> /// You query the Core Reporting API for Google Analytics report data. /// Documentation: https://developers.google.com/analytics/devguides/reporting/core/v3/reference /// /// Dimension and metric reference : https://developers.google.com/analytics/devguides/reporting/core/dimsmets /// </summary> /// <param name="service">Valid Authenticated AnalyticsServicve </param> /// <param name="ProfileId">The unique table ID of the form XXXX, where XXXX is the Analytics view (profile) ID for which the query will retrieve the data. </param> /// <param name="StartDate">Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="EndDate">End date for fetching Analytics data. Request can specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="Metrics">A list of comma-separated metrics, such as ga:sessions,ga:bounces. </param> /// <param name="optionalValues">Optional values can be null </param> /// <returns></returns> public static GaData Get(AnalyticsService service, string profileId, string startDate, string endDate, string metrics, OptionalValues optionalValues) { ILog logger = LogManager.GetLogger(typeof(OptionalValues)); try { DataResource.GaResource.GetRequest request = service.Data.Ga.Get(String.Format("ga:{0}", profileId), startDate, endDate, metrics); if (optionalValues == null) { request.MaxResults = 1000; } else { request.MaxResults = optionalValues.MaxResults; request.Dimensions = optionalValues.Dimensions; request.SamplingLevel = optionalValues.Sampling; request.Segment = optionalValues.Segment; request.Sort = optionalValues.Sort; request.Filters = optionalValues.Filter; } return ProcessResults(request); } catch (Exception e) { logger.Error(e.StackTrace); logger.Error(e.Message); } return null; }
/// <summary> /// You query the Core Reporting API for Google Analytics report data. /// Documentation: https://developers.google.com/analytics/devguides/reporting/core/v3/reference /// /// Dimension and metric reference : https://developers.google.com/analytics/devguides/reporting/core/dimsmets /// </summary> /// <param name="service">Valid Authenticated AnalyticsServicve </param> /// <param name="ProfileId">The unique table ID of the form XXXX, where XXXX is the Analytics view (profile) ID for which the query will retrieve the data. </param> /// <param name="StartDate">Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="EndDate">End date for fetching Analytics data. Request can specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="Metrics">A list of comma-separated metrics, such as ga:sessions,ga:bounces. </param> /// <param name="optionalValues">Optional values can be null </param> /// <returns></returns> public static GaData Get(AnalyticsService service, string profileId, string startDate, string endDate, string metrics, OptionalValues optionalValues) { DataResource.GaResource.GetRequest request = service.Data.Ga.Get(String.Format("ga:{0}", profileId), startDate, endDate, metrics); if (optionalValues == null) { request.MaxResults = 1000; } else { request.MaxResults = optionalValues.MaxResults; request.Dimensions = optionalValues.Dimensions; request.SamplingLevel = optionalValues.Sampling; request.Segment = optionalValues.Segment; request.Sort = optionalValues.Sort; request.Filters = optionalValues.Filter; } return ProcessResults(request); }
/// <summary> /// You query the Core Reporting API for Google Analytics report data. /// Documentation: https://developers.google.com/analytics/devguides/reporting/core/v3/reference /// /// Dimension and metric reference : https://developers.google.com/analytics/devguides/reporting/core/dimsmets /// </summary> /// <param name="service">Valid Authenticated AnalyticsServicve </param> /// <param name="ProfileId">The unique table ID of the form XXXX, where XXXX is the Analytics view (profile) ID for which the query will retrieve the data. </param> /// <param name="StartDate">Start date for fetching Analytics data. Requests can specify a start date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="EndDate">End date for fetching Analytics data. Request can specify an end date formatted as YYYY-MM-DD, or as a relative date (e.g., today, yesterday, or NdaysAgo where N is a positive integer). </param> /// <param name="Metrics">A list of comma-separated metrics, such as ga:sessions,ga:bounces. </param> /// <param name="optionalValues">Optional values can be null </param> /// <returns></returns> public static GaData Get(AnalyticsService service, string profileId, string startDate, string endDate, string metrics, OptionalValues optionalValues) { // ILog logger = LogManager.GetLogger(typeof(OptionalValues)); try { DataResource.GaResource.GetRequest request = service.Data.Ga.Get(String.Format("ga:{0}", profileId), startDate, endDate, metrics); if (optionalValues == null) { request.MaxResults = 1000; } else { request.MaxResults = optionalValues.MaxResults; request.Dimensions = optionalValues.Dimensions; request.SamplingLevel = optionalValues.Sampling; request.Segment = optionalValues.Segment; request.Sort = optionalValues.Sort; request.Filters = optionalValues.Filter; } return(ProcessResults(request)); } catch (Exception e) { // logger.Error(e.StackTrace); //logger.Error(e.Message); } return(null); }
public static Events list(CalendarService service, string id ,OptionalValues optionalValues) { var request = service.Events.List(id); if (optionalValues == null) { request.MaxResults = 100; } else { request.MaxResults = optionalValues.MaxResults; request.ShowDeleted = optionalValues.ShowDeleted; } return ProcessResults(request); }
/// <summary> /// Returns real-time Google Analytics data for a view (profile). /// https://developers.google.com/analytics/devguides/reporting/realtime/v3/reference/data/realtime/get /// /// /// Beta: /// The Real Time Reporting API is currently available as a developer preview in limited beta. If you're interested in signing up, request access to the beta. /// https://docs.google.com/forms/d/1qfRFysCikpgCMGqgF3yXdUyQW4xAlLyjKuOoOEFN2Uw/viewform /// Apply for access wait 24 hours and then try you will not hear from Google when you have been approved. /// /// Documentation: Dimension and metric reference https://developers.google.com/analytics/devguides/reporting/realtime/dimsmets/ /// </summary> /// <param name="service">Valid authenticated Google analytics service</param> /// <param name="profileId">Profile id to request data from </param> /// <param name="metrics">Valid Real time Metrics (Required)</param> /// <param name="optionalValues">Optional values can be null</param> /// <returns>https://developers.google.com/analytics/devguides/reporting/realtime/v3/reference/data/realtime#resource</returns> public static RealtimeData Get(AnalyticsService service, string profileId, string metrics, OptionalValues optionalValues) { try { DataResource.RealtimeResource.GetRequest request = service.Data.Realtime.Get(String.Format("ga:{0}", profileId), metrics); request.MaxResults = 10000; if (optionalValues != null) { request.Dimensions = optionalValues.Dimensions; request.Sort = optionalValues.Sort; request.Filters = optionalValues.Filter; } RealtimeData feed = request.Execute(); return(feed); } catch (Exception ex) { Console.WriteLine(ex.Message); return(null); } }
public void Should_serialize_optional_values() { var model = new OptionalValues { OptionalReferenceTypeProperty = "fark", OptionalValueTypeProperty = 5, OptionalNullableTypeProperty = 6, OptionalReferenceTypeField = "farker", OptionalValueTypeField = 7, OptionalNullableTypeField = 8 }; var result = Serialize.Json(model, x => x.IncludePublicFields()); result.ShouldEqual("{" + "\"OptionalReferenceTypeProperty\":\"fark\"," + "\"OptionalValueTypeProperty\":5," + "\"OptionalNullableTypeProperty\":6," + "\"OptionalReferenceTypeField\":\"farker\"," + "\"OptionalValueTypeField\":7," + "\"OptionalNullableTypeField\":8" + "}"); }