1. The document discusses the low-level API in Google App Engine for Java. It explains how the low-level API allows direct access to services like Datastore without higher-level frameworks.
2. Key concepts covered include the Datastore service, entities, keys, queries, transactions. It provides code examples for storing and retrieving entities using the low-level API.
3. Alternative high-level APIs are mentioned, like JDO and JPA, but the document focuses on explaining the lower-level implementation details and capabilities provided by the raw App Engine services.
企業間連携や IT 基盤のモダナイズなど、API の活用が広がり、国内でも API エコノミーが発展しつつあります。
API を最大限に活用するためには、セキュリティやアナリティクス、利用者サポートなど、いわゆる API 管理が重要です。
今回の放送では、Google Cloud の API 管理基盤、Apigee の特徴や機能概要、事例などをデモを交えて紹介します。
appengine ja night #24 Google Cloud Endpoints and BigQueryRyo Yamasaki
appengine ja night #24で発表したGoogle Cloud Endpoints と BigQueryのスライドです。
・English version
http://www.slideshare.net/vierjp/appengine-ja-night-24-google-cloud-endpoints-and-bigquery-english
Mashup Awards 7 参加者のみなさまへ - Put i.ntere.st button on your site -
http://interest-jp.blogspot.com/search/label/developer
appengine ja night #24 Google Cloud Endpoints and BigQueryRyo Yamasaki
appengine ja night #24で発表したGoogle Cloud Endpoints と BigQueryのスライドです。
・English version
http://www.slideshare.net/vierjp/appengine-ja-night-24-google-cloud-endpoints-and-bigquery-english
Mashup Awards 7 参加者のみなさまへ - Put i.ntere.st button on your site -
http://interest-jp.blogspot.com/search/label/developer
Google Developer Day 2010 Tokyo GTUG Boot Camp
https://sites.google.com/site/tokyogtugusersite/bootcamp-2010?pli=1
appengine ja night #10 Google AppEngine で作る Google Apps Marketplace 対応サービス
1. Google AppEngine で作る
Google Apps Marketplace
対応サービス
appengine ja night #10
2010年8月30日
なかじまんソフトウェア株式会社
中嶋 信博 @nakajiman
Google API Expert (OpenSocial)
2. OpenSocial Pages for Google Apps
http://opensocial-pages.appspot.com/
• Google Apps のユーザとグ
ループをソーシャルグラフとし
て、ドメイン専用 OpenSocial
コンテナが持てる
• PC に加えて Smart Phone で
も OpenSocial ガジェットが快
適に動作するアーキテクチャ
• Google AppEngine でホストし
て Google Apps Marketplace
に対応
• ソースコードも入手可
3. 本日のゴール
• Google Apps Marketplace とは何か
Google Apps に Product をインストールすると
はどういうことか
• Application Manifest とは何か
Google Apps Marketplace に Product を掲載す
る手順
• AppEngine から OpenID Single-Sign On と 2-
legged OAuth for Data を使って Google Apps と
連携する方法
• 情報源
11. Google Apps Developer Program Site
Sell Marketplace Apps
Payment Policy
http://developer.googleapps.com/marketplace/fees
Revenue share
Vender : Google = 80 : 20
Google Checkout API
Automatic Billing or Self Reported Billing
16. Product は Google AppEngine
でホストし、マルチテナントな構成
http://opensocial-pages.appspot.com/a/${DOMAIN_NAME}/
Product の利用
Google AppEngine
ログイン OpenID Single Sign-On
データアクセス 2-legged OAuth for Data
<?xml version
<Application Application
Manifest
xmlns= … Manifest
Add it now ボタン
Google 利用規約の同意 Google
Apps データアクセスの認可 Apps Marketplace
23. Google Apps Marketplace
Product の開発から公開までの流れ
Vendor (会社情報) と
Product (製品情報) の登録
Product の開発とテスト
Vendor は公開前でもインストールできる
Google Marketplace への公開申請
Google Checkout で 100 ドル支払い
Google Marketplace による審査
結果は48時間以内にメールで通知
Google Marketplace の掲載開始
誰でもインストールできる
24. Vendor (会社情報)
• Company logo
• Vendor name
• Phone number
• Email address
• Home page URL
• Address line
• Town
• Zip/post code
• Country
• Vendor overview
25. Product (製品情報)
• My product may be directly
installed into Google Apps
domains
• Category
On
• Name
• Summary Overview
• Full Overview
• Application Manifest
• Pricing Summary
• Terms of Service
• Benefit points / External links
• Screenshot / Logo
• Screencast / Video or success
story collateral
• Version information
• Google Analytics
• Google APIs
33. Google Data Java Client Library
Google Apps Provisioning API で必要なファイル
• gdata-core-1.0.jar
• gdata-client-1.0.jar
• gdata-appsforyourdomain-1.0.jar
35. Google Apps Provisioning API
User 情報の取得
UserService service = new UserService("User");
service.setOAuthCredentials(params, new OAuthHmacSha1Signer());
service.useSsl();
URL url = new URL("https://apps-apis.google.com/a/feeds" +
"/n35.com/user/2.0/nakajiman");
UserEntry user = service.getEntry(url, UserEntry.class);
String givenName = user.getName().getGivenName();
String familyName = user.getName().getFamilyName();
boolean admin = user.getLogin().getAdmin();
36. Google Apps Provisioning API
Group 情報の取得
AppsPropertyService service =
new AppsPropertyService("AppsProperty");
service.setOAuthCredentials(params, new OAuthHmacSha1Signer());
service.useSsl();
URL url = new URL("https://apps-apis.google.com/a/feeds" +
"/group/2.0/n35.com/[email protected]");
GenericEntry group = service.getEntry(url, GenericEntry.class);
String title = group.getProperty("groupName");
String description = group.getProperty("description");
37. Google Apps Provisioning API
Group メンバー情報の取得
AppsPropertyService service =
new AppsPropertyService("AppsProperty");
service.setOAuthCredentials(params, new OAuthHmacSha1Signer());
service.useSsl();
URL url = new URL("https://apps-apis.google.com/a/feeds" +
"/group/2.0/n35.com/[email protected]/member");
GenericFeed members = service.getFeed(url, GenericFeed.class);
for (GenericEntry member : members.getEntries()) {
String memberId = member.getProperty("memberId");
38. 情報源
Google Apps Marketplace
http://www.google.com/enterprise/marketplace/
Google Apps Developer Program Site
http://developer.googleapps.com/
Google Apps APIs (en)
http://code.google.com/intl/en/googleapps/
Google Data Java Client Library
http://code.google.com/p/gdata-java-client/
OpenSocial Pages for Google Apps
http://opensocial-pages.appspot.com/