Yardımcılar ve sabitler
Paketin istemcinin metotları dışında tanımladığı diğer şeyler.
Statik metotlar
| Metot | Nedir |
|---|---|
| new OpenEmail(), OpenEmail.builder() | Bir istemci. İkisi de belirtmediğiniz her şey için ortamı okur. |
| OpenEmail.createTempMail() | Hiç API anahtarı taşımayan bir tek kullanımlık gelen kutusu istemcisi. |
| OpenEmail.verifyWebhookSignature() | Bir teslimatın imzasını sabit sürede, bir Duration ile değiştirilebilen beş dakikalık bir pencereyle denetler ve olayı döndürür. |
| OpenEmail.toBase64() | Bir ekin baytları için base64 metni. |
| OpenEmail.isApiKey() | Bir değerin oe_live_ ya da oe_test_ biçiminde olup olmadığı. Bir biçim denetimidir, anahtarın hâlâ çalıştığının kanıtı değildir. |
| OpenEmail.isAccessToken() | Bir değerin bir OAuth erişim tokenı biçiminde olup olmadığı: 1 ile 512 karakter arası ve oe_ ile başlamayan. |
| OpenEmail.isSealed() | Bir iletinin gövdesinin şifreli metin olup olmadığı. Gövdeleri açık olarak gelen iki imzalı biçim için false'tur. |
| OpenEmail.resolveLanguage(), OpenEmail.languageByCode(), OpenEmail.isRtlLanguage() | Bir dil seçicinin ihtiyaç duyduğu aramalar; paketle gelen Languages.ALL tablosu üzerinde çalışır. |
| client.raw().request() | Henüz hiçbir yöntemin sarmadığı bir yolu, istemcinin kimlik bilgisi ve yeniden deneme kurallarıyla çağırır. |
Sabitler
TypeScript SDK'sının dışa aktardığı her değer kümesi, uk.openemail.constants içinde bir final sınıftır ve her üye için aynı adlarla bir sabit içerir; yani WebhookEvents.EMAIL_DELIVERED değeri email.delivered olur. values() tüm kümeyi döndürür; dışarıdan gelen bir değeri denetlemenin yolu da budur.
List<String> events = WebhookEvents.values();List<String> scopes = List.of(ApiScopes.EMAILS_SEND, ApiScopes.THREADS_READ);boolean known = events.contains("email.delivered"); System.out.println(events.size() + " " + String.join(",", scopes) + " " + PageLimits.MAX_LIMIT + " " + known);| Sabit | Ne tutar |
|---|---|
| OpenEmail.VERSION | Paket sürümü. |
| ApiScopes | Kapsam sözlüğü; bir anahtar oluşturma ekranı için. |
| WebhookEvents, WebhookSignatureHeaders | Bir uç noktanın abone olabileceği olaylar ve bir teslimatın taşıdığı başlıkların adları. |
| ErrorTypes | ApiException.type() yönteminin döndürdüğü hata sözlüğü. |
| PageLimits | Sayfalanan listelerin çoğundaki en büyük ve varsayılan limit, yani MAX_LIMIT ve DEFAULT_LIMIT: 100 ve 25. Birkaç liste daha fazlasını alır ve her yöntemin başvurusu bunu belirtir. |
| RuleFields, RuleOperators, RuleActions | Bir kuralın koşullarının ve eylemlerinin kurulduğu sözlük. |
| MessageEncryptionFormats | Alım işleminin adlandırabileceği beş zarf. Bunlardan üçü mühürlüdür. |
| CredentialKinds, StepUpMethods, StepUpErrorCodes | me().get ve me().ping çağrılarının hangi kimlik bilgisini tanımladığı, bir doğrulama kodunun nasıl denetlendiği ve bir doğrulamanın hangi kodlarla başarısız olabileceği. |
| ThreadSorts, PeopleSorts, FileSorts ve diğer *Sorts | Bir listenin sıralanabileceği düzenler. |
| FormStatuses, BroadcastStatuses, SuppressionReasons ve diğer kümeler | Bir kaynağın bir alanının alabileceği değerler. Her küme tuttuğu şeye göre adlandırılır. |
| Languages.ALL | Çevrilmiş bir gönderimin ya da önizlemenin kabul ettiği her dil; kodu, adları ve yazım yönüyle birlikte. |
Nesneler
Yanıt, Map<String, Object> olarak çözülmüş JSON'dur. Paket yalnızca yanıta biçim verdiği yerde kendi türünü oluşturur. Her biri uk.openemail.result içinde değiştirilemez bir record'dur ve bir for döngüsü satırlarını dolaşır.
| Sınıf | Ne taşır |
|---|---|
| Page | Sayfalanan her list çağrısından items, hasMore ve nextCursor. |
| PeoplePage | Aynısı ve ek olarak seen; contacts().listPeople yönteminden gelir. |
| TempMessagesPage | Aynısı ve ek olarak expiresAt; tempMail().listMessages yönteminden gelir. |
| AddressBookPage, AddressBook | unrestricted, addresses ve domains; addresses().list (hasMore ve nextCursor ile birlikte) ve addresses().listAll yöntemlerinden gelir. |
| BatchResult | items, sent ve failed; emails().sendBatch yönteminden gelir. |
| TemplateSends | items, total, page ve pageSize; templates().listSends yönteminden gelir. |
| PagedIterable | Her iterate yönteminden gelen, tüm sayfalar üzerinde bir dolaşma: bir for döngüsü, stream() ya da toList(). |
| Body, RequestOptions | Bir çağrının aldıkları: sırasını koruyan ve null değerleri kabul eden bir istek gövdesi ile tek bir çağrının seçenekleri. |
Paketin fırlattığı her istisna bir OpenEmailException değeridir: ApiException ve alt sınıfları, NetworkException ve WebhookSignatureException. Çağrının kendisindeki bir hata, hiçbir şey gönderilmeden önce IllegalArgumentException fırlatır.
Bilerek yapmadıkları
- Hiçbir istek gövdesini doğrulamaz. Kuralların tek kopyası sunucunun şemasıdır; burada ikinci bir kopya, birinin iki yıl önce sabitlediği bir sürümde, daha yeni bir sunucunun kabul ettiği bir adresi eninde sonunda reddederdi.
- Bir yanıtı yalnızca tek bir biçimde yeniden şekillendirir: bir koleksiyonun
datalistesi zarfından çıkarılıp yukarıdaki türlerden birine konur. Diğer her yanıt, API'nin camelCase anahtarlarıyla, API'nin gönderdiği gibi geri gelir. - Zaman uyumsuz yöntemleri yoktur. Bir çağrı, yanıt gelene kadar iş parçacığını bekletir; bu, sanal bir iş parçacığında çok az şeye mal olur.