On Wed, Feb 18, 2015 at 10:54 AM, Martin Grigorov <[email protected]>
wrote:

>
> On Wed, Feb 18, 2015 at 10:24 AM, <[email protected]> wrote:
>
>> Repository: isis
>> Updated Branches:
>>   refs/heads/ISIS-903 980586f51 -> 1b9f7e8df
>>
>>
>> ISIS-903: renaming UrlResolver to TranslationsResolver
>>
>>
>> Project: http://git-wip-us.apache.org/repos/asf/isis/repo
>> Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/1b9f7e8d
>> Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/1b9f7e8d
>> Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/1b9f7e8d
>>
>> Branch: refs/heads/ISIS-903
>> Commit: 1b9f7e8dfeb5b3e87ea2288eec8708c3fd013859
>> Parents: 980586f
>> Author: Dan Haywood <[email protected]>
>> Authored: Wed Feb 18 08:23:59 2015 +0000
>> Committer: Dan Haywood <[email protected]>
>> Committed: Wed Feb 18 08:23:59 2015 +0000
>>
>> ----------------------------------------------------------------------
>>  .../services/TranslationsResolverWicket.java    | 68 ++++++++++++++++++++
>>  .../viewer/services/UrlResolverWicket.java      | 68 --------------------
>>  .../services/i18n/TranslationsResolver.java     | 29 +++++++++
>>  .../isis/applib/services/i18n/UrlResolver.java  | 29 ---------
>>  .../metamodel/services/i18n/po/PoReader.java    | 10 +--
>>  .../services/i18n/po/TranslationServicePo.java  | 20 +++---
>>  6 files changed, 113 insertions(+), 111 deletions(-)
>> ----------------------------------------------------------------------
>>
>>
>>
>> http://git-wip-us.apache.org/repos/asf/isis/blob/1b9f7e8d/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java
>> b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java
>> new file mode 100644
>> index 0000000..0a104b8
>> --- /dev/null
>> +++
>> b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/TranslationsResolverWicket.java
>> @@ -0,0 +1,68 @@
>> +/*
>> + *  Licensed to the Apache Software Foundation (ASF) under one
>> + *  or more contributor license agreements.  See the NOTICE file
>> + *  distributed with this work for additional information
>> + *  regarding copyright ownership.  The ASF licenses this file
>> + *  to you under the Apache License, Version 2.0 (the
>> + *  "License"); you may not use this file except in compliance
>> + *  with the License.  You may obtain a copy of the License at
>> + *
>> + *        http://www.apache.org/licenses/LICENSE-2.0
>> + *
>> + *  Unless required by applicable law or agreed to in writing,
>> + *  software distributed under the License is distributed on an
>> + *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>> + *  KIND, either express or implied.  See the License for the
>> + *  specific language governing permissions and limitations
>> + *  under the License.
>> + */
>> +package org.apache.isis.viewer.wicket.viewer.services;
>> +
>> +import java.io.IOException;
>> +import java.net.URL;
>> +import java.util.List;
>> +import javax.servlet.ServletContext;
>> +import com.google.common.base.Charsets;
>> +import com.google.common.io.CharSource;
>> +import com.google.common.io.Resources;
>> +import org.slf4j.Logger;
>> +import org.slf4j.LoggerFactory;
>> +import org.apache.isis.applib.annotation.DomainService;
>> +import org.apache.isis.applib.annotation.Programmatic;
>> +import org.apache.isis.applib.services.i18n.TranslationsResolver;
>> +import org.apache.isis.viewer.wicket.viewer.IsisWicketApplication;
>> +
>> +
>> +/**
>> + * An implementation that reads from /WEB-INF/...
>> + */
>> +@DomainService
>> +public class TranslationsResolverWicket implements TranslationsResolver {
>> +
>> +    public static Logger LOG =
>> LoggerFactory.getLogger(TranslationsResolverWicket.class);
>> +
>> +    @Override
>> +    @Programmatic
>>
>
>
>
>> +    public List<String> readLines(final String file) {
>> +        try {
>> +            final ServletContext servletContext =
>> getIsisWicketApplication().getServletContext();
>> +            final URL url = servletContext.getResource("/WEB-INF/" +
>> file);
>>
>
> I think this should take into account "isis.config.dir" context param.
> Otherwise it will break
> http://isis.apache.org/reference/externalized-configuration.html
>
>

But probably no one will want to have custom i18n files for
development/testing/production
So maybe it is not a problem.


> +            return readLines(url);
>> +        } catch (final RuntimeException | IOException ignored) {
>> +            return null;
>> +        }
>> +    }
>> +
>> +    private static List<String> readLines(final URL url) throws
>> IOException {
>> +        if(url == null) {
>> +            return null;
>> +        }
>> +        final CharSource charSource = Resources.asCharSource(url,
>> Charsets.UTF_8);
>> +        return charSource.readLines();
>> +    }
>> +
>> +    protected IsisWicketApplication getIsisWicketApplication() {
>> +        return IsisWicketApplication.get();
>> +    }
>> +
>> +}
>>
>>
>> http://git-wip-us.apache.org/repos/asf/isis/blob/1b9f7e8d/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/UrlResolverWicket.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/UrlResolverWicket.java
>> b/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/UrlResolverWicket.java
>> deleted file mode 100644
>> index e735573..0000000
>> ---
>> a/component/viewer/wicket/impl/src/main/java/org/apache/isis/viewer/wicket/viewer/services/UrlResolverWicket.java
>> +++ /dev/null
>> @@ -1,68 +0,0 @@
>> -/*
>> - *  Licensed to the Apache Software Foundation (ASF) under one
>> - *  or more contributor license agreements.  See the NOTICE file
>> - *  distributed with this work for additional information
>> - *  regarding copyright ownership.  The ASF licenses this file
>> - *  to you under the Apache License, Version 2.0 (the
>> - *  "License"); you may not use this file except in compliance
>> - *  with the License.  You may obtain a copy of the License at
>> - *
>> - *        http://www.apache.org/licenses/LICENSE-2.0
>> - *
>> - *  Unless required by applicable law or agreed to in writing,
>> - *  software distributed under the License is distributed on an
>> - *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>> - *  KIND, either express or implied.  See the License for the
>> - *  specific language governing permissions and limitations
>> - *  under the License.
>> - */
>> -package org.apache.isis.viewer.wicket.viewer.services;
>> -
>> -import java.io.IOException;
>> -import java.net.URL;
>> -import java.util.List;
>> -import javax.servlet.ServletContext;
>> -import com.google.common.base.Charsets;
>> -import com.google.common.io.CharSource;
>> -import com.google.common.io.Resources;
>> -import org.slf4j.Logger;
>> -import org.slf4j.LoggerFactory;
>> -import org.apache.isis.applib.annotation.DomainService;
>> -import org.apache.isis.applib.annotation.Programmatic;
>> -import org.apache.isis.applib.services.i18n.UrlResolver;
>> -import org.apache.isis.viewer.wicket.viewer.IsisWicketApplication;
>> -
>> -
>> -/**
>> - * An implementation that reads from /WEB-INF/...
>> - */
>> -@DomainService
>> -public class UrlResolverWicket implements UrlResolver {
>> -
>> -    public static Logger LOG =
>> LoggerFactory.getLogger(UrlResolverWicket.class);
>> -
>> -    @Override
>> -    @Programmatic
>> -    public List<String> readLines(final String file) {
>> -        try {
>> -            final ServletContext servletContext =
>> getIsisWicketApplication().getServletContext();
>> -            final URL url = servletContext.getResource("/WEB-INF/" +
>> file);
>> -            return readLines(url);
>> -        } catch (final RuntimeException | IOException ignored) {
>> -            return null;
>> -        }
>> -    }
>> -
>> -    private static List<String> readLines(final URL url) throws
>> IOException {
>> -        if(url == null) {
>> -            return null;
>> -        }
>> -        final CharSource charSource = Resources.asCharSource(url,
>> Charsets.UTF_8);
>> -        return charSource.readLines();
>> -    }
>> -
>> -    protected IsisWicketApplication getIsisWicketApplication() {
>> -        return IsisWicketApplication.get();
>> -    }
>> -
>> -}
>>
>>
>> http://git-wip-us.apache.org/repos/asf/isis/blob/1b9f7e8d/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationsResolver.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationsResolver.java
>> b/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationsResolver.java
>> new file mode 100644
>> index 0000000..218725c
>> --- /dev/null
>> +++
>> b/core/applib/src/main/java/org/apache/isis/applib/services/i18n/TranslationsResolver.java
>> @@ -0,0 +1,29 @@
>> +/*
>> + *  Licensed to the Apache Software Foundation (ASF) under one
>> + *  or more contributor license agreements.  See the NOTICE file
>> + *  distributed with this work for additional information
>> + *  regarding copyright ownership.  The ASF licenses this file
>> + *  to you under the Apache License, Version 2.0 (the
>> + *  "License"); you may not use this file except in compliance
>> + *  with the License.  You may obtain a copy of the License at
>> + *
>> + *        http://www.apache.org/licenses/LICENSE-2.0
>> + *
>> + *  Unless required by applicable law or agreed to in writing,
>> + *  software distributed under the License is distributed on an
>> + *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>> + *  KIND, either express or implied.  See the License for the
>> + *  specific language governing permissions and limitations
>> + *  under the License.
>> + */
>> +package org.apache.isis.applib.services.i18n;
>> +
>> +import java.util.List;
>> +import org.apache.isis.applib.annotation.Programmatic;
>> +
>> +public interface TranslationsResolver {
>> +
>> +    @Programmatic
>> +    public List<String> readLines(final String file);
>> +
>> +}
>>
>>
>> http://git-wip-us.apache.org/repos/asf/isis/blob/1b9f7e8d/core/applib/src/main/java/org/apache/isis/applib/services/i18n/UrlResolver.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/core/applib/src/main/java/org/apache/isis/applib/services/i18n/UrlResolver.java
>> b/core/applib/src/main/java/org/apache/isis/applib/services/i18n/UrlResolver.java
>> deleted file mode 100644
>> index 5dcb614..0000000
>> ---
>> a/core/applib/src/main/java/org/apache/isis/applib/services/i18n/UrlResolver.java
>> +++ /dev/null
>> @@ -1,29 +0,0 @@
>> -/*
>> - *  Licensed to the Apache Software Foundation (ASF) under one
>> - *  or more contributor license agreements.  See the NOTICE file
>> - *  distributed with this work for additional information
>> - *  regarding copyright ownership.  The ASF licenses this file
>> - *  to you under the Apache License, Version 2.0 (the
>> - *  "License"); you may not use this file except in compliance
>> - *  with the License.  You may obtain a copy of the License at
>> - *
>> - *        http://www.apache.org/licenses/LICENSE-2.0
>> - *
>> - *  Unless required by applicable law or agreed to in writing,
>> - *  software distributed under the License is distributed on an
>> - *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>> - *  KIND, either express or implied.  See the License for the
>> - *  specific language governing permissions and limitations
>> - *  under the License.
>> - */
>> -package org.apache.isis.applib.services.i18n;
>> -
>> -import java.util.List;
>> -import org.apache.isis.applib.annotation.Programmatic;
>> -
>> -public interface UrlResolver {
>> -
>> -    @Programmatic
>> -    public List<String> readLines(final String file);
>> -
>> -}
>>
>>
>> http://git-wip-us.apache.org/repos/asf/isis/blob/1b9f7e8d/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
>> b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
>> index 19776bc..e0bb2b7 100644
>> ---
>> a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
>> +++
>> b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/PoReader.java
>> @@ -28,7 +28,7 @@ import com.google.common.collect.Maps;
>>  import org.slf4j.Logger;
>>  import org.slf4j.LoggerFactory;
>>  import org.apache.isis.applib.services.i18n.TranslationService;
>> -import org.apache.isis.applib.services.i18n.UrlResolver;
>> +import org.apache.isis.applib.services.i18n.TranslationsResolver;
>>
>>  class PoReader extends PoAbstract {
>>
>> @@ -42,7 +42,7 @@ class PoReader extends PoAbstract {
>>       *
>>       * <p>
>>       *     This means that the reader will search for
>> <tt>translations_en-US.po</tt>, <tt>translations_en.po</tt>,
>> -     *     <tt>translations.po</tt>, according to the location that the
>> provided {@link org.apache.isis.applib.services.i18n.UrlResolver}
>> searches.  For example, if using the Wicket implementation, then will
>> search for these files
>> +     *     <tt>translations.po</tt>, according to the location that the
>> provided {@link org.apache.isis.applib.services.i18n.TranslationsResolver}
>> searches.  For example, if using the Wicket implementation, then will
>> search for these files
>>       *     under <tt>/WEB-INF</tt> directory.
>>       * </p>
>>       */
>> @@ -180,11 +180,11 @@ class PoReader extends PoAbstract {
>>      }
>>
>>      private List<String> readUrl(final String candidate) {
>> -        final UrlResolver urlResolver =
>> translationServicePo.getUrlResolver();
>> -        if(urlResolver == null) {
>> +        final TranslationsResolver translationsResolver =
>> translationServicePo.getTranslationsResolver();
>> +        if(translationsResolver == null) {
>>              return null;
>>          }
>> -        return urlResolver.readLines(candidate);
>> +        return translationsResolver.readLines(candidate);
>>      }
>>
>>  }
>>
>>
>> http://git-wip-us.apache.org/repos/asf/isis/blob/1b9f7e8d/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
>> b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
>> index d1f1630..abde47b 100644
>> ---
>> a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
>> +++
>> b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/i18n/po/TranslationServicePo.java
>> @@ -27,7 +27,7 @@ import org.slf4j.LoggerFactory;
>>  import org.apache.isis.applib.annotation.Programmatic;
>>  import org.apache.isis.applib.services.i18n.LocaleProvider;
>>  import org.apache.isis.applib.services.i18n.TranslationService;
>> -import org.apache.isis.applib.services.i18n.UrlResolver;
>> +import org.apache.isis.applib.services.i18n.TranslationsResolver;
>>
>>  /**
>>   * Not annotated with &#64;DomainService, but is registered as a
>> fallback by <tt>ServicesInstallerFallback</tt>.
>> @@ -113,22 +113,24 @@ public class TranslationServicePo implements
>> TranslationService {
>>          return  ((PoWriter)po).toPot();
>>      }
>>
>> -    @Inject
>> -    private
>> -    UrlResolver urlResolver;
>> +    // //////////////////////////////////////
>>
>>      @Inject
>>      private
>> -    LocaleProvider localeProvider;
>> -
>> +    TranslationsResolver translationsResolver;
>>
>>      @Programmatic
>> -    public UrlResolver getUrlResolver() {
>> -        return urlResolver;
>> +    TranslationsResolver getTranslationsResolver() {
>> +        return translationsResolver;
>>      }
>>
>> +    @Inject
>> +    private
>> +    LocaleProvider localeProvider;
>> +
>>      @Programmatic
>> -    public LocaleProvider getLocaleProvider() {
>> +    LocaleProvider getLocaleProvider() {
>>          return localeProvider;
>>      }
>> +
>>  }
>>
>>
>

Reply via email to