Geodi ContentObject - İçerik Tanım Nesnesi

Geodi Data Extraction API ( Formatter ) ve Geodi Feed Api (FeedHandler) servislerine daha detaylı içerik sağlamak için bu nesneden yararlanabilirsiniz.

Gönderilecek tanımlar ile yetkiler, özel görüntü adı, içeriğin özel görüntüleme adresi, içeriğin alınacağı path, url veya içeriğin tamamı ( byte[] ) servise iletilebilir. 

Nesnelerin tüm özelliklerine Tek İçerik - ContentObjet ve Çoklu İçerik - IntegrationObject  adresleri kullanılarak Geodi üzerinden ulaşılabilir.  


Tek İçerik


		{ 
			Mode:0, 
			ContentURL : '',
			DisplayName:'',
			ContentDate:'',
			ViewURL : '',
			Thumbnail : '',
			FastViewHTML:'',
			MetaData :  [ { Name:'',  GType:'', Value: null, DDoubleValue:double , DText:'', DAttributes: {Key:Value,Key:Value} } ],
			Content : {
				Extension: '',
				ContentID:'',
				Content : '',
				CurrentSections :[{TableName:'',ColumnName:'',Section:0, SectionGroupID:'',Attributes : {Key:Value,Key:Value}}],
				Properties :[{TableName:'',ColumnName:'',Section:0, SectionGroupID:'',Attributes : {Key:Value,Key:Value}}],
				Splitters :  [
							{
								SType:'string',
								Text:'',
								SectionIndex:-1,
								PropertiesIndex:-1,
							},
							{
								SType:'string[]',
								Splitters : []
								SectionIndex:-1,
								PropertiesIndex:-1,
							},
							{
								SType:'object',
								Objects:[
									{GType:'', Value: null, DDoubleValue:double , DText:'', DAttributes: {Key:Value,Key:Value} }
								],
								SectionIndex:-1,
								PropertiesIndex:-1,
							}
						]
						},
			Permission : {
					Permit[],
					Deny[]
				}
		}


  • Mode (int - Opsiyonel) : Yapılan işleme ait bilgidir.  Değerler 0(Varsaılan) : Eklendi,Değiştirildi 1: Silindi, 2: Sadece Yetki değişimi
  • ContentURL (string) :  İçerik yoludur. Benzersiz olmalı, içeriği göstermelidir. Url veya  Disk üzerindeki dosya yolu verilebilir.
  • DisplayName(string) : Arama sonucunda görüntülenecek görüntü adıdır.
  • ContetnDate (GMT string - Opsiyonel): İçerik tarihidir.
  • ViewURL (string- Opsiyonel) : İçeriğin görüntüleme adresidir. Belirtilmemesi durumunda GEODI içeriği açabildiği görüntüleyici ile uygulamaya başvurmadan gösterir. Belirtildiğinde içeriğe ulaşmak için kullanıcıyı bu url'e yönlendirir. Taranan doküman ile açılan dokümanın farklı olması içinde yararlanılabilir. URL içinde aşağıdaki tanımlar kullanılabilir
    • {wsName} : GEODI üzerinde tanımlı proje adı.
    • {unc} : Feed sırasında iletilen Content.Content_Id değeri
    • {viewParam} : GEODI Viewer'a gelen doküman açma parametreleri.
    • {user} : Aktif kullanıcı. ( Bu bir redirect işlemi olduğundan GET ile çalışacaktır. Kullanıcı tarayıcıda değiştirebilir.  Bu değere güvenilmemeli, uygulama tarafından  kendi kullanıcı doğrulama mekanizmaları kullanılmalıdır. )
    • Örnek kullanım : ViewURL:".../MyViewer.aspx?ID={unc}&wsName={wsName}"
  • Thumbnail  (string - Opsiyonel): Arama sonuçlarında ek olarak gösterilmesi istenilen önizleme imajıdır. base64:... ile imaj veya doğrudan imaj yolu dönülebilir.
  • FastViewHTML (string - Opsiyonel): Belirtilmesi durumunda arama sonucunda içerik ile birlikte gösterilir.
  • TextURL (string - Opsiyonel) :  Tanımlanmışsa ve boş sonuç dönmezse dokümana ait metin içeriği almakta kullanılır. Sonuç dönerse ContentURL çağrısı yapılmaz.
  • TextData (string[] - Opsiyonel): Ek metin bilgileri iletilebilir. OCR veya farklı yollarla elde edilmiş aranabilir metin içerik beklenir. array içerisindeki her öğe bir sayfaya karşılık gelmelidir. Eğer sayfalama bilinmiyorsa sadece 1 eleman gönderilmeli, iletilecek tüm metin veriyi içermelidir. TextURL özelliğinden farklı olarak iletilen değerler içeriğe eklenir. ( ContentURL + TextData veya TextURL+ TextData şeklinde işlenir )
  • MetaData (object array- Opsiyonel) : İçeriğindeki Key/Value değerleri'de arama sonuçlarına yansıtılır. Contet içeriğinde ayrıca belirtilmesi gerekmez.
    • Name (string): Meta veri anahtar adı.
    • Value : Meta veri değeri
    • GType (string-Opsiyonel): Value<Type> , Type değerleri alabilir. Type için System.TypeCode , Geom değerleri kullanılabilir. Varsayılan değeri String'dir
    • DDoubleValue (advanced- Opsiyonel):: Value<Type> tipindeki değerler için normalize edilmiş değerdir.
    • DText (advanced- Opsiyonel):: Value<Type> tipindeki değerler string değerdir.
    • DAttributes (advanced- Opsiyonel):: Value<Type> tipindeki değerler için ek bilgilerdir. ItemType değerine KM, Parcel, Name gibi değerler atılarak bu değerin mutlaka kmi isim veya parsel olarak kabul eidlmesi sağlanabilir.
  • Content (opject - Opsiyonel) : Belirtilmesi durumunda ContentURL'e dönüş yapılmadan iletilen içerik kullanılır.
    • Extension (string): İçerik uzantısıdır. .pdf, .zip, .rar, .dwg gibi değerler kullanılabilir. Bir form içeriği iletiliyorsa .form değeri kullanılabilir.
    • Content (Opsiyonel): base64 formatında byte[] içerik veya doğrudan düz metin verilebilir.  ContentUrl sadece id olarak kullanılır.
    • ContentForcedBytes(Opsiyonel) :  içerik byte[] olarak verilebilir. tanımlanmışsa Content.Content yok sayılır. ContentUrl sadece id olarak kullanılır.
    • CurrentSections (advanced- section - Opsiyonel):  Spliterlara ait Section bilgisini array olarak içerir. İçeriğe geri dönüş için kullanılan bilgilerdir. (Kaçıncı sayfada, Hangi hücrede )
    • Properties (advanced- section - Opsiyonel):  Spliterlara ait ek bilgileri array olarak içerir. Recognizer'lar için kesinleştirme bilgileri içerir. Parsel, Ad, Soyad kolon veya katmanındaki içerikler için özel işlemler yapılır. ( Hangi tabloda, Hangi katmanda, Hangi kolonda )
    • Splitters (advanced- Opsiyonel):  İçerikten parçalarnmış değerlerdir. Satırlar, paragraflar, sayfalar olabilir. string, string[], object[] SpliterType değerleri kullanılabilir. Her tip farklı özellikler içerir. Spliter içerisindeki GType değeri MetaData içindeki ile aynıdır.
  • Permission (object- Opsiyonel): Root Permission ile aynı özelliklere sahiptir. Dosya bazında özelleştirilmiş yetkiler tanımlamakta kullanılır. Root üzerindeki Permission ile birlikte çalışır.


Çoklu İçerik


 {
	PageCount:0,
	ChangeKey:'',
	Permission : {
					Permit[],
					Deny[]
				},
	Contents : [ ContentObject,  ContentObject , ... ]
 }
    • PageCount (int - Opsiyonel): Bir servis sonucunda dönecek içerik sayısı fazla ile uygulama ilk GetContents isteğinde sayfa sayısını dönerek kaynak kullanımını azaltabilir. sunucu durumu, servis ile dönecek içerik boyutuna, iç yetki mekanizmasına göre karar verebilir. Tümünü bir defada dönebileceği gibi sayfa sayfada gönderebilir.
    • ChangeKey (string): Bir sonraki zamanlanmış taramada ChangeKey olarak uygulamaya iletilecek değerdir.
    • Permission (object- Opsiyonel): Belirtilmesi durumunda dokümana özel görüntüleme yetkileri kullanılır. GEODI servis ile elde edilen verilerde içeriği değiştirme, düzenleme, silme özelliği sağlamaz. Bu servis çağrısında Contents ile dönen tüm içerikler bu yetkilere sahip olacaktır. Yetkilendirme kullanıldığında yetki değişimlerinden etkilenen dokümanlarda GetContent listesine dönmelidir. Sadece yetkilerinin değiştiği biliniyorsa Mode:2 değeri ayarlanmalıdır.
        • Permit (string array- Opsiyonel): İzin verilen kullanıcı/rol/grup listesidir.
        • Deny (string array- Opsiyonel): Yasaklanan kullanıcı/rol/grup listesidir.
    • Contents (object array): Content nesnesi dizisidir.