Skip to content

Commit 0f9980e

Browse files
Move services into a "services" super-module. (#33)
1 parent 7acd75a commit 0f9980e

10 files changed

Lines changed: 13 additions & 4 deletions

File tree

packages/gapic-generator/gapic/generator/generator.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515
import collections
1616
import os
17+
import re
1718
from typing import Any, Iterable, Mapping, Sequence, Tuple
1819

1920
import jinja2
@@ -180,13 +181,18 @@ def _get_filenames(
180181
# Replace the $name and $version variables.
181182
filename = filename.replace('$name_$version',
182183
self._api.naming.versioned_module_name)
184+
filename = filename.replace('$version', self._api.naming.version)
183185
filename = filename.replace('$name', self._api.naming.module_name)
184186

185187
# Replace the $service variable if applicable.
186188
if context and 'service' in context:
187189
filename = filename.replace('$service',
188190
context['service'].module_name)
189191

192+
# Paths may have empty path segments if components are empty
193+
# (e.g. no $version); handle this.
194+
filename = re.sub(r'/+', '/', filename)
195+
190196
# Done, return the filename.
191197
return (filename,)
192198

packages/gapic-generator/gapic/templates/$namespace/$name/__init__.py.j2

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
{% extends '_base.py.j2' %}
22

33
{% block content %}
4+
# Import each service from {{ api.naming.version }} into the unversioned namespace.
45
{% for service in api.services.values() -%}
5-
from ..{{ api.naming.versioned_module_name }}.{{ service.name|snake_case }} import {{ service.name }}
6+
from ..{{ api.naming.versioned_module_name }}.services.{{ service.name|snake_case }} import {{ service.name }}
67
{% endfor %}
8+
79
__all__ = (
10+
'{{ api.naming.version }}',
811
{%- for service in api.services.values() %}
912
'{{ service.name }}',
1013
{%- endfor %}

packages/gapic-generator/gapic/templates/$namespace/$name_$version/__init__.py.j2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
{% block content %}
44
{% for service in api.services.values() -%}
5-
from .{{ service.name|snake_case }} import {{ service.name }}
5+
from .services.{{ service.name|snake_case }} import {{ service.name }}
66
{% endfor %}
77
__all__ = (
88
{%- for service in api.services.values() %}

packages/gapic-generator/gapic/templates/$namespace/$name_$version/$service/__init__.py.j2 renamed to packages/gapic-generator/gapic/templates/$namespace/$name_$version/services/$service/__init__.py.j2

File renamed without changes.

packages/gapic-generator/gapic/templates/$namespace/$name_$version/$service/client.py.j2 renamed to packages/gapic-generator/gapic/templates/$namespace/$name_$version/services/$service/client.py.j2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ from google.auth import credentials
1111
{% for package, python_module in service.python_modules -%}
1212
from {{ package }} import {{ python_module }}
1313
{% endfor %}
14-
from ..utils import dispatch
14+
from ...utils import dispatch
1515
from .transports import get_transport_class
1616
from .transports import {{ service.name }}Transport
1717

packages/gapic-generator/gapic/templates/$namespace/$name_$version/$service/transports/__init__.py.j2 renamed to packages/gapic-generator/gapic/templates/$namespace/$name_$version/services/$service/transports/__init__.py.j2

File renamed without changes.

packages/gapic-generator/gapic/templates/$namespace/$name_$version/$service/transports/base.py.j2 renamed to packages/gapic-generator/gapic/templates/$namespace/$name_$version/services/$service/transports/base.py.j2

File renamed without changes.

packages/gapic-generator/gapic/templates/$namespace/$name_$version/$service/transports/grpc.py.j2 renamed to packages/gapic-generator/gapic/templates/$namespace/$name_$version/services/$service/transports/grpc.py.j2

File renamed without changes.

packages/gapic-generator/gapic/templates/$namespace/$name_$version/$service/transports/http.py.j2 renamed to packages/gapic-generator/gapic/templates/$namespace/$name_$version/services/$service/transports/http.py.j2

File renamed without changes.

packages/gapic-generator/tests/system/conftest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
from google.auth.credentials import AnonymousCredentials
1818
from google.showcase import Showcase
19-
from google.showcase_v1alpha1.showcase.transports.grpc import (
19+
from google.showcase_v1alpha1.services.showcase.transports.grpc import (
2020
ShowcaseGrpcTransport,
2121
)
2222

0 commit comments

Comments
 (0)