Skip to content

Commit fbedd71

Browse files
authored
Merge pull request #212 from appwrite/feat-sdk-generator-improvements
feat: improvements to sdk-generator
2 parents f73391d + 11d2a15 commit fbedd71

File tree

2 files changed

+7
-53
lines changed

2 files changed

+7
-53
lines changed

example.php

Lines changed: 1 addition & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212
use Appwrite\SDK\Language\Ruby;
1313
use Appwrite\SDK\Language\Dart;
1414
use Appwrite\SDK\Language\Go;
15-
use Appwrite\SDK\Language\Java;
16-
use Appwrite\SDK\Language\Typescript;
1715
use Appwrite\SDK\Language\Deno;
1816
use Appwrite\SDK\Language\HTTP;
1917
use Appwrite\SDK\Language\Swift;
@@ -38,7 +36,7 @@ function getSSLPage($url) {
3836
//$spec = getSSLPage('https://appwrite.io/v1/open-api-2.json?extensions=1');
3937
// $spec = getSSLPage('https://appwrite.io/v1/open-api-2.json?extensions=1'); // Enable only with Appwrite local server running on port 80
4038
// $spec = getSSLPage('https://appwrite.io/v1/open-api-2.json?extensions=1&platform=console'); // Enable only with Appwrite local server running on port 80
41-
39+
// $spec = file_get_contents('https://appwrite.io/specs/swagger2?platform=client');
4240
$spec = file_get_contents('./specs/swagger-appwrite.0.8.0.json');
4341

4442
if(empty($spec)) {
@@ -97,30 +95,6 @@ function getSSLPage($url) {
9795

9896
$sdk->generate(__DIR__ . '/examples/web');
9997

100-
// TypeScript
101-
$sdk = new SDK(new Typescript(), new Swagger2($spec));
102-
103-
$sdk
104-
->setName('NAME')
105-
->setDescription('Repo description goes here')
106-
->setShortDescription('Repo short description goes here')
107-
->setVersion('0.0.0')
108-
->setURL('https://example.com')
109-
->setLogo('https://appwrite.io/v1/images/console.png')
110-
->setLicenseContent('test test test')
111-
->setWarning('**WORK IN PROGRESS - NOT READY FOR USAGE**')
112-
->setChangelog('**CHANGELOG**')
113-
->setGitUserName('repoowner')
114-
->setGitRepoName('reponame')
115-
->setTwitter('appwrite_io')
116-
->setDiscord('564160730845151244', 'https://appwrite.io/discord')
117-
->setDefaultHeaders([
118-
'X-Appwrite-Response-Format' => '0.7.0',
119-
])
120-
;
121-
122-
$sdk->generate(__DIR__ . '/examples/typescript');
123-
12498
// Deno
12599
$sdk = new SDK(new Deno(), new Swagger2($spec));
126100

@@ -293,31 +267,6 @@ function getSSLPage($url) {
293267

294268
$sdk->generate(__DIR__ . '/examples/go');
295269

296-
// Java
297-
298-
$sdk = new SDK(new Java(), new Swagger2($spec));
299-
300-
$sdk
301-
->setName('NAME')
302-
->setNamespace('io appwrite')
303-
->setDescription('Repo description goes here')
304-
->setShortDescription('Repo short description goes here')
305-
->setURL('https://example.com')
306-
->setGitUserName('appwrite')
307-
->setGitRepoName('java-sdk')
308-
->setLogo('https://appwrite.io/v1/images/console.png')
309-
->setLicenseContent('test test test')
310-
->setWarning('**WORK IN PROGRESS - NOT READY FOR USAGE**')
311-
->setChangelog('**CHANGELOG**')
312-
->setVersion('0.0.1')
313-
->setTwitter('appwrite_io')
314-
->setDiscord('564160730845151244', 'https://appwrite.io/discord')
315-
->setDefaultHeaders([
316-
'X-Appwrite-Response-Format' => '0.7.0',
317-
])
318-
;
319-
320-
$sdk->generate(__DIR__ . '/examples/java');
321270

322271
// Swift
323272
$sdk = new SDK(new Swift(), new Swagger2($spec));

src/SDK/SDK.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -537,7 +537,9 @@ public function generate($target)
537537
];
538538

539539
foreach ($this->language->getFiles() as $file) {
540-
$template = $this->twig->load($file['template']); /* @var $template \Twig\TemplateWrapper */
540+
if ($file['scope'] != 'copy') {
541+
$template = $this->twig->load($file['template']); /* @var $template \Twig\TemplateWrapper */
542+
}
541543
$destination = $target . '/' . $file['destination'];
542544
$block = $file['block'] ?? null;
543545
$minify = $file['minify'] ?? false;
@@ -547,6 +549,9 @@ public function generate($target)
547549
$this->render($template, $destination, $block, $params, $minify);
548550
break;
549551
case 'copy':
552+
if (!file_exists(dirname($destination))) {
553+
mkdir(dirname($destination), 0777, true);
554+
}
550555
copy(realpath(__DIR__.'/../../templates/' . $file['template']), $destination);
551556
break;
552557
case 'service':

0 commit comments

Comments
 (0)