Пример #1
0
 public static string MapDocumentContentDataTypeEnumToExtension(DocumentContentDataTypeEnum type)
 {
     return(type.ToString());
 }
Пример #2
0
        public static DocumentResult MapDocumentResult(Doc.DocumentResult documentResult)
        {
            if (documentResult.status == Doc.DocumentResultStatus.error)
            {
                var error = (Doc.T_Error)documentResult.Item;
                return(new DocumentResult(error.Message));
            }

            var documentsResult = (Doc.T_OGDWebDocument)documentResult.Item;

            var transformedDocument = new Client.Models.Document()
            {
                Abkuerzung         = documentsResult.Abkuerzung,
                Aenderung          = documentsResult.Aenderung,
                Aenderungsdatum    = documentsResult.Aenderungsdatum,
                AlteDokumentnummer = documentsResult.AlteDokumentnummer,
                Anmerkung          = documentsResult.Anmerkung,
                AnmerkungZurGanzenRechtsvorschrift =
                    documentsResult.AnmerkungZurGanzenRechtsvorschrift,
                ArtikelParagraphAnlage = documentsResult.ArtikelParagraphAnlage,
                Ausserkrafttretedatum  = documentsResult.Ausserkrafttretedatum,
                Beachte = documentsResult.Beachte,
                BeachteZurGanzenRechtsvorschrift =
                    documentsResult.BeachteZurGanzenRechtsvorschrift,
                Dokumentnummer = documentsResult.Dokumentnummer,
                Gesetzesnummer = documentsResult.Gesetzesnummer,

                Indizes = documentsResult.Indizes != null
                                                            ? new List <string>(documentsResult.Indizes)
                                                            : new List <string>(),

                Inkrafttretedatum = documentsResult.Inkrafttretedatum,
                Kundmachungsorgan = documentsResult.Kundmachungsorgan,
                Kurztitel         = documentsResult.Kurztitel,
                Langtitel         = documentsResult.Langtitel,
                Schlagworte       = documentsResult.Schlagworte,
                Sprachen          = documentsResult.Sprachen,
                Staaten           = documentsResult.Staaten,
                Typ                     = documentsResult.Typ,
                Uebergangsrecht         = documentsResult.Uebergangsrecht,
                Unterzeichnungsdatum    = documentsResult.Unterzeichnungsdatum,
                Veroeffentlichungsdatum = documentsResult.Veroeffentlichungsdatum,
            };

            var transformedContentItems = new List <Client.Models.DocumentContent>();

            foreach (Doc.T_WebDocumentContentReference content in documentsResult.Dokumentinhalt)
            {
                DocumentContentTypeEnum     ctype = ContentTypeToContentTypeEnum(content.ContentType);
                DocumentContentDataTypeEnum dtype = DataTypeToDataTypeEnum(content.DataType);

                if (content.Item is Doc.risdok)
                {
                    var risdok = (Doc.risdok)content.Item;

                    if (null != risdok.nutzdaten)
                    {
                        var transformedContent = new Client.Models.DocumentContent()
                        {
                            Name        = content.Name,
                            ContentType = ctype,
                            DataType    = dtype,
                            Nutzdaten   = risdok.nutzdaten.Text,                            // for Xslt processing
                        };

                        transformedContentItems.Add(transformedContent);
                    }
                }
                else
                {
                    // content.Item is a byte[] when correctly decoded, eg see risdok://NOR12088695
                    if (content.Item is byte[])
                    {
                        var attachment = new Client.Models.DocumentContent()
                        {
                            Name        = content.Name, // this Name property is sent extensionless
                            ContentType = ctype,
                            DataType    = dtype,
                            Content     = (byte[])content.Item
                        };

                        transformedContentItems.Add(attachment);
                    }
                }
            }

            return(new DocumentResult()
            {
                Succeeded = true,
                Document = transformedDocument,
                DocumentContents = transformedContentItems
            });
        }
Пример #3
0
 public static string MapDocumentContentDataTypeEnumToExtension(DocumentContentDataTypeEnum type)
 {
     return type.ToString();
 }