I'll have a look to see if it's trivial to support.  But if not, then I'll
leave it as is.

On 18 February 2015 at 08:56, Martin Grigorov <[email protected]> wrote:

> 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