public bool ProcessEnvelope(ReadEnvelope item, SaveStatus status) { if (item == null || string.IsNullOrWhiteSpace(item.EnvelopeIdentifier)) { status.AddError("A valid ReadEnvelope must be provided."); return(false); } DateTime createDate = new DateTime(); DateTime envelopeUpdateDate = new DateTime(); if (DateTime.TryParse(item.NodeHeaders.CreatedAt.Replace("UTC", "").Trim(), out createDate)) { status.SetEnvelopeCreated(createDate); } if (DateTime.TryParse(item.NodeHeaders.UpdatedAt.Replace("UTC", "").Trim(), out envelopeUpdateDate)) { status.SetEnvelopeUpdated(envelopeUpdateDate); } status.DocumentOwnedBy = item.documentOwnedBy; if (item.documentPublishedBy != null) { if (item.documentOwnedBy == null || (item.documentPublishedBy != item.documentOwnedBy)) { status.DocumentPublishedBy = item.documentPublishedBy; } } else { //will need to check elsewhere //OR as part of import check if existing one had 3rd party publisher } string payload = item.DecodedResource.ToString(); string envelopeIdentifier = item.EnvelopeIdentifier; string ctdlType = RegistryServices.GetResourceType(payload); string envelopeUrl = RegistryServices.GetEnvelopeUrl(envelopeIdentifier); //Already done in RegistryImport //LoggingHelper.WriteLogFile( UtilityManager.GetAppKeyValue( "logFileTraceLevel", 5 ), item.EnvelopeCetermsCtid + "_assessment", payload, "", false ); if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, envelopeIdentifier, status)); //else // return ImportV2( payload, envelopeIdentifier, status ); } else { status.AddError(thisClassName + ".ImportByResourceUrl - 2019-05-01 ONLY GRAPH BASED IMPORTS ARE HANDLED"); return(false); //LoggingHelper.DoTrace( 5, " envelopeUrl: " + envelopeUrl ); // LoggingHelper.WriteLogFile( 1, "asmt_" + item.EnvelopeIdentifier, payload, "", false ); // input = JsonConvert.DeserializeObject<InputEntity>( item.DecodedResource.ToString() ); // return Import( input, envelopeIdentifier, status ); } }
public bool ProcessEnvelope(ReadEnvelope item, SaveStatus status) { if (item == null || string.IsNullOrWhiteSpace(item.EnvelopeIdentifier)) { status.AddError("A valid ReadEnvelope must be provided."); return(false); } string payload = item.DecodedResource.ToString(); string envelopeIdentifier = item.EnvelopeIdentifier; string ctdlType = RegistryServices.GetResourceType(payload); string envelopeUrl = RegistryServices.GetEnvelopeUrl(envelopeIdentifier); if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, envelopeIdentifier, status)); //else // return ImportV2( payload, envelopeIdentifier, status ); } else { LoggingHelper.DoTrace(5, " envelopeUrl: "+ envelopeUrl); LoggingHelper.WriteLogFile(1, "lopp_" + item.EnvelopeIdentifier, payload, "", false); input = JsonConvert.DeserializeObject <InputEntity>(item.DecodedResource.ToString()); return(Import(input, envelopeIdentifier, status)); } }
public bool ImportByPayload(string payload, SaveStatus status) { if (ImportServiceHelpers.IsAGraphResource(payload)) { return(ImportV3(payload, "", status)); } else { status.AddError(thisClassName + ".ImportByResourceUrl - 2019-05-01 ONLY GRAPH BASED IMPORTS ARE HANDLED"); return(false); } }
public bool ProcessEnvelope(ReadEnvelope item, SaveStatus status) { if (item == null || string.IsNullOrWhiteSpace(item.EnvelopeIdentifier)) { status.AddError("A valid ReadEnvelope must be provided."); return(false); } // DateTime createDate = new DateTime(); DateTime envelopeUpdateDate = new DateTime(); if (DateTime.TryParse(item.NodeHeaders.CreatedAt.Replace("UTC", "").Trim(), out createDate)) { status.SetEnvelopeCreated(createDate); } if (DateTime.TryParse(item.NodeHeaders.UpdatedAt.Replace("UTC", "").Trim(), out envelopeUpdateDate)) { status.SetEnvelopeUpdated(envelopeUpdateDate); } status.DocumentOwnedBy = item.documentOwnedBy; if (item.documentOwnedBy != null && item.documentPublishedBy != null && item.documentPublishedBy != item.documentOwnedBy) { status.DocumentPublishedBy = item.documentPublishedBy; } // string payload = item.DecodedResource.ToString(); status.EnvelopeId = item.EnvelopeIdentifier; string ctdlType = RegistryServices.GetResourceType(payload); //string envelopeUrl = RegistryServices.GetEnvelopeUrl( status.EnvelopeId ); //Already done in RegistryImport //LoggingHelper.WriteLogFile( UtilityManager.GetAppKeyValue( "logFileTraceLevel", 5 ), item.EnvelopeCetermsCtid + "_organization", payload, "", false ); if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, status)); //else // return ImportV2( payload, envelopeIdentifier, status ); } else { status.AddError("Importing of an organization resource payload is no longer supported. Please provide a /graph/ input."); //LoggingHelper.DoTrace( 5, " envelopeUrl: " + envelopeUrl ); //LoggingHelper.WriteLogFile( 1, "org_" + item.EnvelopeIdentifier, payload, "", false ); //input = JsonConvert.DeserializeObject<InputEntity>( item.DecodedResource.ToString() ); //return Import( input, envelopeIdentifier, status ); return(false); } }
/// <summary> /// Retrieve an envelop from the registry and do import /// </summary> /// <param name="envelopeId"></param> /// <param name="status"></param> /// <returns></returns> //public bool ImportByEnvelopeId( string envelopeId, SaveStatus status ) //{ // //this is currently specific, assumes envelop contains a credential // //can use the hack fo GetResourceType to determine the type, and then call the appropriate import method // if ( string.IsNullOrWhiteSpace( envelopeId ) ) // { // status.AddError( thisClassName + ".ImportByEnvelope - a valid envelope id must be provided" ); // return false; // } // string statusMessage = ""; // //EntityServices mgr = new EntityServices(); // string ctdlType = ""; // try // { // ReadEnvelope envelope = RegistryServices.GetEnvelope( envelopeId, ref statusMessage, ref ctdlType ); // if ( envelope != null && !string.IsNullOrWhiteSpace( envelope.EnvelopeIdentifier ) ) // { // return CustomProcessEnvelope( envelope, status ); // } // else // return false; // } // catch ( Exception ex ) // { // LoggingHelper.LogError( ex, thisClassName + ".ImportByEnvelopeId()" ); // status.AddError( ex.Message ); // if ( ex.Message.IndexOf( "Path '@context', line 1" ) > 0 ) // { // status.AddWarning( "The referenced registry document is using an old schema. Please republish it with the latest schema!" ); // } // return false; // } //} public bool ImportByResourceUrl(string resourceUrl, SaveStatus status) { if (string.IsNullOrWhiteSpace(resourceUrl)) { status.AddError(thisClassName + ".ImportByResourceUrl - a valid resourceUrl must be provided"); return(false); } //this is currently specific, assumes envelop contains an organization //can use the hack for GetResourceType to determine the type, and then call the appropriate import method string statusMessage = ""; //EntityServices mgr = new EntityServices(); string ctdlType = ""; try { string payload = RegistryServices.GetResourceByUrl(resourceUrl, ref ctdlType, ref statusMessage); if (!string.IsNullOrWhiteSpace(payload)) { if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, "", status)); //else // return ImportV2( payload, "", status ); } else { status.AddError(thisClassName + ".ImportByResourceUrl - 2019-05-01 ONLY GRAPH BASED IMPORTS ARE HANDLED"); return(false); //input = JsonConvert.DeserializeObject<InputEntity>( payload.ToString() ); // return Import( input, "", status ); } } else { return(false); } } catch (Exception ex) { LoggingHelper.LogError(ex, thisClassName + ".ImportByResourceUrl()"); status.AddError(ex.Message); if (ex.Message.IndexOf("Path '@context', line 1") > 0) { status.AddWarning("The referenced registry document is using an old schema. Please republish it with the latest schema!"); } return(false); } }
public bool ImportByPayload(string payload, SaveStatus status) { if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, "", status)); //else // return ImportV2( payload, "", status ); } else { input = JsonConvert.DeserializeObject <InputEntity>(payload); return(Import(input, "", status)); } }
public bool ImportByPayload(string payload, SaveStatus status) { if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, "", status)); //else // return ImportV2( payload, "", status ); } else { //input = JsonConvert.DeserializeObject<InputEntity>( payload ); //return Import( input, "", status ); status.AddError("A valid graph object must be provided for a cost manifest."); return(false); } }
public bool ImportByPayload(string payload, SaveStatus status) { if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, "", status)); //else // return ImportV2( payload, "", status ); } else { status.AddError(thisClassName + ".ImportByResourceUrl - 2019-05-01 ONLY GRAPH BASED IMPORTS ARE HANDLED"); return(false); //input = JsonConvert.DeserializeObject<InputEntity>( payload ); // return Import( input, "", status ); } }
public bool ImportByPayload(string payload, SaveStatus status) { //EntityServices mgr = new EntityServices(); if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, "", status)); //else // return ImportV2( payload, "", status ); } else { //do additional check in case of getting just the resource instead of /graph/ input = JsonConvert.DeserializeObject <InputEntity>(payload); return(Import(input, "", status)); } }
public bool ProcessEnvelope(ReadEnvelope item, SaveStatus status) { if (item == null || string.IsNullOrWhiteSpace(item.EnvelopeIdentifier)) { status.AddError("A valid ReadEnvelope must be provided."); return(false); } // DateTime createDate = new DateTime(); DateTime envelopeUpdateDate = new DateTime(); if (DateTime.TryParse(item.NodeHeaders.CreatedAt.Replace("UTC", "").Trim(), out createDate)) { status.SetEnvelopeCreated(createDate); } if (DateTime.TryParse(item.NodeHeaders.UpdatedAt.Replace("UTC", "").Trim(), out envelopeUpdateDate)) { status.SetEnvelopeUpdated(envelopeUpdateDate); } // string payload = item.DecodedResource.ToString(); string envelopeIdentifier = item.EnvelopeIdentifier; string ctdlType = RegistryServices.GetResourceType(payload); string envelopeUrl = RegistryServices.GetEnvelopeUrl(envelopeIdentifier); LoggingHelper.WriteLogFile(UtilityManager.GetAppKeyValue("logFileTraceLevel", 5), item.EnvelopeCetermsCtid + "_costManifest", payload, "", false); if (ImportServiceHelpers.IsAGraphResource(payload)) { //if ( payload.IndexOf( "\"en\":" ) > 0 ) return(ImportV3(payload, "", status)); //else // return ImportV2( payload, "", status ); } else { status.AddError("A valid graph object must be provided for a cost manifest."); return(false); //LoggingHelper.DoTrace( 5, " envelopeUrl: " + envelopeUrl ); // LoggingHelper.WriteLogFile( 1, "costManifest_" + item.EnvelopeIdentifier, payload, "", false ); // input = JsonConvert.DeserializeObject<InputEntity>( item.DecodedResource.ToString() ); // return Import( input, envelopeIdentifier, status ); } }