Veri Eylemi Eklentisi Dosya Referansı

Her bir veri eylemi eklentisi bir plugin.xml dosyası gerektirir ve her plugin.xml dosyasında herhangi bir sayıda veri eylemi bulunabilir.

Veri Eylemi plugin.xml Dosyası Örneği

plugin.xml dosyasında üç ana bölüm vardır, tns:obiplugin, tns:resources ve tns:extension.

Örnek plugin.xml

Bu örnek, bir veri eylemine yönelik tipik bir plugin.xml dosyası göstermektedir.

1 <?xml version="1.0" encoding="UTF-8"?>
2 <tns:obiplugin xmlns:tns="http://plugin.frameworks.tech.bi.oracle"
3                id="obitech-currencyconversion"
4                name="Oracle BI Currency Conversion"
5                version="0.1.0.@qualifier@"
6                optimizable="true"
7                optimized="false">
8 
9 
10   <tns:resources>
11      <tns:resource id="currencyconversion" path="scripts/currencyconversion.js" type="script" optimizedGroup="base"/>
12      <tns:resource-folder id="nls" path="resources/nls" optimizable="true">
13         <tns:extensions>
14            <tns:extension name="js" resource-type="script"/>
15         </tns:extensions>
16      </tns:resource-folder>
17   </tns:resources>
18  
19 
20   <tns:extensions>
21      <tns:extension id="oracle.bi.tech.currencyconversiondataaction" point-id="oracle.bi.tech.plugin.dataaction" version="1.0.0">
22         <tns:configuration>
23         {
24            "host": { "module": "obitech-currencyconversion/currencyconversion" },
25            "resourceBundle": "obitech-currencyconversion/nls/messages",
26            "properties":
27            {
28               "className": "obitech-currencyconversion/currencyconversion.CurrencyConversionDataAction",
29               "displayName": { "key" : "CURRENCY_CONVERSION", "default" : "Currency Conversion" },
30               "order": 100
31            }
32         }
33         </tns:configuration>
34      </tns:extension>
35   </tns:extensions>
36 
37 </tns:obiplugin>

Veri Eylemi plugin.xml Dosyası Nitelikler Bölümü - tns:obiplugin

tns:obiplugin bölümü, tüm eklenti tipleri için ortak olan nitelikleri tanımlar.

Eklenti Nitelikleri

tns:obiplugin bölümü, tüm eklenti tipleri için ortak olan nitelikleri tanımlar.

1 <?xml version="1.0" encoding="UTF-8"?>
2 <tns:obiplugin xmlns:tns="http://plugin.frameworks.tech.bi.oracle"
3                id="obitech-currencyconversion"
4                name="Oracle BI Currency Conversion"
5                version="0.1.0.@qualifier@"
6                optimizable="true"
7                optimized="false">
  • Satır 1: XML beyanı.
  • Satır 2: Eklentinin kök XMLElement'i için açılış etiketi ve plugin.xml dosyalarında kullanılan tns ad alanı beyanı.
  • Satır 3: Eklentinin benzersiz tanımlayıcısı.
  • Satırı 4: Eklentinin görünen ad öndeğeri (yerelleştirilmiş sürüm mevcut olmadığında kullanılır).
  • Satır 5: Eklentinin sürüm numarası.
  • Satır 6: JS/CSS'nin optimize edilip edilemeyeceğini (sıkıştırma) belirten bir mantıksal değer.
  • Satır 7: JS/CSS'nin optimize edilip edilmediğini (sıkıştırma) belirten bir mantıksal değer.

Veri Eylemi plugin.xml Dosyası Kaynaklar Bölümü - tns:resources

tns:resources bölümü, eklentinize katkıda bulunan tüm dosyaları kaydeder.

Kaynaklar

1 <tns:resources>
2    <tns:resource id="currencyconversion" path="scripts/currencyconversion.js" type="script" optimizedGroup="base"/>
3    <tns:resource-folder id="nls" path="resources/nls" optimizable="true">
4       <tns:extensions>
5          <tns:extension name="js" resource-type="script"/>
6       </tns:extensions>
7    </tns:resource-folder>
8 </tns:resources>

Her JavaScript, CSS, Resim ve Çeviri Kaynağı Dosyasını burada kaydetmeniz gerekir. Bölüm <tns:resources> öğesinde yer alır ve aşağıdakiler arasından herhangi sayıda öğe içerebilir:

  • <tns:resource>

    Bu öğeler tek dosya kaydetmek için kullanılır (örneğin JavaScript veya CSS dosyası).

  • <tns:resource-folder>

    Bu öğeler, belirli bir klasördeki tüm dosyaları aynı anda kaydetmek için kullanılır. Örneğin, bir resim klasörü veya Yerel Dil Desteği için kaynak dosyalarını içeren klasör.

Aşağıdaki bölümlerde, her dosya tipini kaydetme hakkında daha fazla bilgi verilmektedir.

JavaScript Dosyaları

Eklentinizdeki her JavaScript dosyası, aşağıda gösterilenle benzer bir satırla kaydedilmelidir.

<tns:resource id="currencyconversion" path="scripts/currencyconversion.js" type="script" optimizedGroup="base"/>

Bu ifadelerin anlamı şudur:

  • id dosyaya verilen no'dur.

    JavaScript dosya adını .js uzantısı olmadan eşleştirmek için no'yu ayarlayın.

  • path, plugin.xml dosyasından JavaScript dosyasına giden görece dizin yoludur. JavaScript dosyaları, eklentinizin scripts dizini altında depolanmalıdır.

    JavaScript dosyalarınızda özel karakterler olmadan (alt çizgi, kısa çizgi gibi) küçük harfler kullanın.

  • type kaydedilen dosyanın tipidir. JavaScript dosyaları için script olarak ayarlanmalıdır.
  • optimizedGroup birden fazla JavaScript dosyasını sıkıştırılmış tek bir dosyada gruplar. Üçüncü taraf eklentileri bunu base olarak ayarlanmış şekilde bırakmalıdır.

CSS Dosyaları

Eklentinizdeki her CSS dosyası, aşağıda gösterilenle benzer bir satırla kaydedilmelidir.

<tns:resource id="currencyconversionstyles" path="resources/currencyconversion.css" type="css"/>

Bu ifadelerin anlamı şudur:

  • id dosyaya verilen no'dur.

    CSS dosya adını .css uzantısı olmadan eşleştirmek için no'yu ayarlayın.

  • path, plugin.xml dosyasından CSS dosyasına giden görece dizin yoludur. CSS dosyaları, eklentinizin resources dizini altında depolanmalıdır.

    CSS dosyalarınızda özel karakterler olmadan (alt çizgi, kısa çizgi gibi) küçük harfler kullanın.

  • type kaydedilen dosyanın tipidir. CSS dosyaları için her zaman css olarak ayarlanmalıdır.

Resim Klasörleri

Eklentinizde JavaScript kodunuzdan referans almanız gereken resimler varsa bunları eklentinizin dizin yapısında resources/images dizinine yerleştirin ve plugin.xml dosyanıza şu şekilde bir <tns:resource-folder> öğesi ekleyin:

<tns:resource-folder id="images" path="resources/images" optimizable="false"/>

Resimlerinizi sadece CSS dosyaları referans alıyorsa, bu <tns:resource-folder> öğesini plugin.xml dosyasına eklemenize gerek yoktur. Bu durumda, CSS dosyanızdaki görece bir dizin yolu kullanarak bunları referans alabilmeniz için bunları yine de resources/images dizinine eklemeniz gerekir.

Yerel Dil Desteği Kaynak Klasörleri

Oracle Analitik, Yerel Dil Desteği uygular. Bu, geliştiricilerin kullanıcı arayüzlerinde görüntülediği dizeleri ayrı JSON kaynak dosyalarında haricileştirmelerini gerektirir. Bunun ardından, bu dosyaların yerelleştirilmiş farklı sürümlerini belirlenmiş bir dizin yapısında sağlayabilirsiniz. Oracle Analitik, otomatik olarak kullanıcının seçtiği dil için doğru dosyayı kullanır. Kaynak dosyalarının gereken sayıda çevrilmiş sürümünü sağlayabilirsiniz. Yerel Dil Desteği kaynak klasörü, Oracle Analitik'i eklentinizin kullandığı belirlenmiş Yerel Dil Desteği dizin yapısının köküne yönlendirir. Yerel Dil Desteği kaynak dosyalarını kullanan tüm eklentilerin aşağıdaki örnekle tamamen aynı görünen bir <tns:resource-folder> girişi kullanmaları gerekir.

1 <tns:resource-folder id="nls" path="resources/nls" optimizable="true">
2    <tns:extensions>
3       <tns:extension name="js" resource-type="script"/>
4    </tns:extensions>
5 </tns:resource-folder>

Dosyaların içerikleri ve izlemeniz gereken belirlenmiş dizin yapısı hakkında detaylı bilgi için bkz. Oluşturulan Klasörler ve Dosyalar.

Veri Eylemi plugin.xml Dosyası Uzantılar Bölümü - tns:extension

Eklentinizin sağlamasını istediğiniz her veri eylemi için şuna benzer bir <tns:extension> öğesi kullanarak bir veri eylemi uzantısı kaydetmelisiniz:

<tns:extension id="oracle.bi.tech.currencyconversiondataaction" point-id="oracle.bi.tech.plugin.dataaction" version="1.0.0">
   <tns:configuration>
   {
      "host": { "module": "obitech-currencyconversion/currencyconversion" },
      "resourceBundle": "obitech-currencyconversion/nls/messages",
      "properties":
      {
         "className": "obitech-currencyconversion/currencyconversion.CurrencyConversionDataAction",
         "displayName": { "key" : "CURRENCY_CONVERSION", "default" : "Currency Conversion" },
         "order": 100
      }
   }
   </tns:configuration>
</tns:extension>

Bu ifadelerin anlamı şudur:

  • id veri eyleminize verdiğiniz benzersiz no'dur.
  • point-id kaydetmek istediğiniz uzantının tipidir. Veri eylemi uzantıları için bu oracle.bi.tech.plugin.dataaction olarak ayarlanmalıdır.
  • version uzantı tanımınızın kullandığı uzantı uygulama programı arabirimi sürümüdür (bunu 1.0.0 olarak bırakın).

<tns:configuration> öğesi şunu tanımlayan bir JSON dizesi içerir:

  • host.module - Veri eyleminizi içeren modülün tam nitelenmiş adıdır. Bu tam nitelenmiş modül adı %PluginID%/%ModuleName% şeklinde belirtilir. Burada:
    • %PluginID%, <tns:obiplugin> öğesinin no özelliğinde belirttiğiniz eklenti no ile değiştirilmelidir.
    • %ModuleName%, veri eyleminizi içeren JavaScript dosyası için <tns:resource> öğesinin no özelliğinde belirttiğiniz kaynak no ile değiştirilmelidir.
  • resourceBundle - -Bu veri eyleminin yerelleştirilmiş kaynaklarını içeren kaynak dosyasının Yerel Dil Desteği dizin yoludur. Kaynak dosyalarınız messages.js olarak adlandırılmışsa ve belirlenmiş nls dizin yapısında doğru şekilde depolanıyorsa bu niteliği %PluginID%/nls/messages olarak ayarlayın (burada %PluginID%, plugin.xml dosyasının en üstündeki <tns:obiplugin> öğesinin no özelliğinde belirttiğiniz eklenti no ile değiştirilmelidir).
  • properties.className - Kaydettiğiniz veri eylemine verilen tam nitelenmiş sınıf adıdır. Bu tam nitelenmiş sınıf adı %PluginID%/%ModuleName%.%ClassName% şeklinde belirtilir. Burada:
    • %PluginID%, <tns:obiplugin> öğesinin no özelliğinde belirttiğiniz eklenti no ile değiştirilmelidir.
    • %ModuleName%, veri eyleminizi içeren JavaScript dosyası için <tns:resource> öğesinin no özelliğinde belirttiğiniz kaynak no ile değiştirilmelidir.
    • %ClassName% JavaScript dosyanızdaki veri eylemi sınıfına verdiğiniz adla değiştirilmelidir.
  • properties.displayName Bu nitelik bir nesne ve iki başka nitelik içerir:
    • key, belirtilen resourceBundle içerisinde veri eyleminin yerelleştirilmiş görünen adını aramak için kullanılabilecek Yerel Dil Desteği mesaj anahtarıdır.
    • default, herhangi bir nedenle görünen adın yerelleştirilmiş sürümünün bulunamaması durumunda kullanılacak görünen ad öndeğeridir.
  • properties.order - Bu nitelik, veri eylemleri listesinde gösterildiğinde bu veri eyleminin görünmesi gereken konumu belirlemek için kullanılan bir ipucu sağlamanıza olanak tanır. Sıra niteliği düşük olan veri eylemleri, yüksek olanlardan daha önce görünür. Eşitlik olması durumunda veri eylemleri sistem tarafından yüklendikleri sırada görüntülenir.