ATMLManagerLibrary.managers.DocumentManager.CreateDocumentPlaceHolder C# (CSharp) Method

CreateDocumentPlaceHolder() public static method

public static CreateDocumentPlaceHolder ( string partNumber, string assetType, string contentType, string docType, string description ) : string
partNumber string
assetType string
contentType string
docType string
description string
return string
        public static string CreateDocumentPlaceHolder( string partNumber, string assetType, string contentType,
            string docType, string description)
        {
            string refId = null;
            var asset = new AssetIdentificationBean();
            DocumentDAO dao = DataManager.getDocumentDAO();
            try
            {
                dao.StartTransaction();
                //Lookup Part Number for document
                string rootPartNumber = partNumber.Split( '#' )[0];
                Document document = GetDocument( rootPartNumber,
                                                 (int) Enum.Parse( typeof (dbDocument.DocumentType), docType ) );
                if (document == null)
                {
                    document = new Document();
                    document.uuid = Guid.NewGuid().ToString();
                    document.name = rootPartNumber;
                    document.Item = ""; //Content
                    document.DocumentContent = Encoding.UTF8.GetBytes( document.Item );
                    document.ContentType = contentType ?? "";
                    document.Description = (description.Length>255?description.Substring( 0,254 ):description) ?? "";
                    document.DocumentType =
                        (dbDocument.DocumentType) Enum.Parse( typeof (dbDocument.DocumentType), docType );
                    SaveDocument( document );
                }

                //Add reference id to asset lookup
                asset = new AssetIdentificationBean();
                asset.uuid = Guid.Parse( document.uuid );
                asset.assetType = assetType;
                asset.assetNumber = partNumber;
                asset.DataState = BASEBean.eDataState.DS_ADD;
                asset.save();
                refId = asset.uuid.ToString();
                dao.CommitTransaction();
                LogManager.Trace( "A placeholder document for \"{0}\" has been created.", partNumber );
            }
            catch (Exception e)
            {
                dao.RollbackTransaction();
                LogManager.Error( e, "An Error occurred creating a document for \"{0}\"", partNumber );
            }
            finally
            {
                dao.EndTransaction();
            }
            return refId;
        }