Your SlideShare is downloading. ×
0
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply
iPhone sideview for SlideShare app

5分でわかる!ownCloudアドオンの作り方

1,112

Published on

5分でHello Worldアプリの作り方を説明します。
当該アプリはownCloudアプリを作る際に一般的に利用するAppFrameworkを用いたアプリです。
主に以下のセンテンスの説明となります。
・ルーティング : URLをコントローラーにひもづけます
・コントローラー : リクエスト受け取ってレスポンス返します
・DIコンテナのエントリ : コントローラで使えるようにこれを作っておきます
・テンプレート : ページを表示させるのに使うHTMLテンプレートです

Published in: Software
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,112
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
16
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  1. 1. 1 PHP Conference 2014 東京 5分でわかる!ownCloudアドオンの作り方 株式会社ビーグッド・テクノロジー
  2. 2. 髙橋 裕樹(たかはしゆうき) 東京都八王子生まれ多摩育ち BeGood Technology 自己紹介 1111999988880000年11110000月33331111日生まれ uuuukkkkiiiittttiiiiyyyyaaaannnn 経歴: システム運用4年・システム開発7年経験 近頃はownCloudや他OSSを眺める担当 あだ名: マギー ownCloudの好きな機能: External Storage その他: PHPより、Java寄り
  3. 3. BeGood Technology 活動紹介 Japan ownCloud User Group (JOUG) http://owncloud.jp/forum/ ownCloud 日本語サポート http://owncloud.jp/service/our-supports
  4. 4. まずは、ownCloudの概要 ~What is ownCloud~ BeGood Technology
  5. 5. BeGood Technology What is ownCloud Dropboxとかオンラインストレージ サービスって、便利だけど、セキュ リティとか心配。 NO IT CONTROL ・Security ・Governance NO IT CONTROL ・Storage and Servers ・User Provisioning
  6. 6. BeGood Technology What is ownCloud 専用の環境に構築すれば 良いじゃない!
  7. 7. BeGood Technology What is ownCloud ownCloudは専用の環境に オンラインストレージを構築する ためのPHPアプリケーション。 IT MANAGED ・Storage and Servers ・User Provisioning IT MANAGED ・Security ・Governance
  8. 8. BeGood Technology What is ownCloud 実際に作ったのはこの人 Frankさん (Frank Karlitschek)
  9. 9. BeGood Technology Why is ownCloud 1 オープンソース 無料・商用での利用が可能なデュアルライセンスを採用 したオープンソースです。 2 操作性 ファイルのDragDropやマルチデバイス対応等、DropBox と同等の操作が行えます。 3 汎用性 クラウド環境や、クローズドな自社サーバー等設置 環境を選びません。 4 拡張性 WebDavやアドオン機構、多数のAPIを搭載しているので、 PHPの実装で機能を拡張できます。
  10. 10. BeGood Technology Why is ownCloud 1 オープンソース 無料・商用での利用が可能なデュアルライセンスを採用 したオープンソースです。 2 操作性 ファイルのDragDropやマルチデバイス対応等、DropBox と同等の操作が行えます。 3 汎用性 クラウド環境や、よりセキュアな自社サーバー等設置 環境を選びません。 4 拡張性 WebDavやアドオン機構、多数のAPIを搭載しているので、 PHPの実装で機能を拡張できます。
  11. 11. ownCloudアドオンの作り方 ~ How to cook ownCloud app ~ BeGood Technology
  12. 12. BeGood Technology This Cooks Goal 何を作るか 単純な「Hello World」アプリケー ションです 何を知るか MVC(app framework)を使っ たアプリケーションの書き方と、 配置方法を知る事ができます HELLO
  13. 13. mysql CREATE DATABASE owncloud; mysql GRANT ALL PRIVILEGES ON owncloud.* TO owncloud@127.0.0.1 IDENTIFIED BY owncloud; BeGood Technology Pre-requisites LAMP環境構築して、Python3イン ストールおいてください。 以下のSQL叩いておいてください。 pipから”ocdev”をインストールして おいてください。 githubからソースコードダウンロード しておいてください。(tag : v7.0.2) PHP5.4 # sudo pip3 install ocdev
  14. 14. BeGood Technology Directory Overview(owncloud core) owncloud (github.com/owncloud/core.git) core・config・l10n・themes・etc.. apps 3rdparty (github.com/owncloud/3rdparty.git)
  15. 15. BeGood Technology Directory Overview(owncloud core) owncloud (github.com/owncloud/core.git) core・config・l10n・themes・etc.. apps 3rdparty (github.com/owncloud/3rdparty.git) ここにアプリを実装します ここに移動してください。 # sudo su - # cd /var/www/html/owncloud/apps
  16. 16. # ocdev startapp HelloWorld ¥ --mail hoge@example.com ¥ --author hoge ¥ --description My first app ¥ --owncloud 7 # chown –R apache:apache hellowold BeGood Technology
  17. 17. BeGood Technology Directory Overview(app) helloworld appinfo css, img, js controller templates tests Contains app metadata and configuration Contains the controllers Contains the templates (Template and Twig) Contains the tests
  18. 18. BeGood Technology Activation 1
  19. 19. BeGood Technology Activation 2
  20. 20. BeGood Technology Activation 3 出来上がり!!
  21. 21. BeGood Technology Hooks SSSSeeeeccccttttiiiioooonnnn LLLLiiiisssstttteeeennnn CCCCaaaallllllllbbbbaaaacccckkkk UserManager preCreateUser postCreateUser (string $uid, string $password) (¥OC¥User¥User $user) preLogin postLogin (string $user, string $password) (¥OC¥User¥User $user) logout (¥OC¥User¥User $user) Filesystem preWrite postWrite (¥OCP¥Files¥Node $node) preCreate postCreate (¥OCP¥Files¥Node $node) preDelete postDelete (¥OCP¥Files¥Node $node) preCopy、postCopy preRename、postRename (¥OCP¥Files¥Node $source, ¥OCP¥Files¥Node $target) Filesystem Scanner scanFile、scanFolder (string $absolutePath)
  22. 22. BeGood Technology WebDav MMMMeeeetttthhhhoooodddd UUUURRRRIIII OOOOppppttttiiiioooonnnn PROFIND /remote.php/webdav/Directory GET /remote.php/webdav/Path PUT /remote.php/webdav/Path MOVE /remote.php/webdav/Path Destination:/remote.php/webdav/ Path COPY /remote.php/webdav/Path Destination:/remote.php/webdav/ Path PROPPATCH /remote.php/webdav/Path MKCOL /remote.php/webdav/Directory DELETE /remote.php/webdav/Directory
  23. 23. BeGood Technology Etc.. SSSSeeeeccccttttiiiioooonnnn DDDDeeeessssccccrrrriiiippppttttiiiioooonnnn Classloader The classloader is provided by ownCloud and loads all your classes automatically. Background Jobs (Cron) Background/cron jobs are usually registered in the appinfo/app.php by using the addRegularTask method Logging The logger can be injected from the ServerContainer Dependency Injection This class extends Pimple for reusability To use this class, extend your own container from this. External API The external API inside ownCloud allows third party developers to access data provided by ownCloud apps. Translation Translation String are shown by editing l10n File To translate Theming Themes can be used to customize the look and feel of ownCloud.
  24. 24. BeGood Technology Try Startup https://aws.amazon.com/marketplace/pp/B00F8I7IXG/ v7.0.2を選択 してください (申請中。。) Sample https://github.com/ukitiyan/helloworld
  25. 25. BeGood Technology ご清聴 ありがとうございました。

×