cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jesse <purplecabb...@gmail.com>
Subject Re: [GitHub] cordova-lib pull request: CB-6698: Support library references for ...
Date Wed, 28 May 2014 19:06:29 GMT
Thanks Mark,

I have updated the doc with details for windows8.  I will be testing to
make sure there is no regression.

@purplecabbage
risingj.com


On Wed, May 28, 2014 at 10:59 AM, Mark Koudritsky <kamrik@google.com> wrote:

> The plugin.xml spec is here
> http://docs.phonegap.com/en/3.4.0/plugin_ref_spec.md.html
>
>
>
> On Wed, May 28, 2014 at 1:56 PM, Jesse <purplecabbage@gmail.com> wrote:
>
> > Where is the document that outlines all of the tags supported in
> > plugin.xml, the expected meaning of those tags, and what attributes they
> > support.
> >
> > Other than that, I can only assume this doesn't break <framework
> > custom="true"> on iOS + Windows 8.
> >
> >
> >
> > @purplecabbage
> > risingj.com
> >
> >
> > On Wed, May 28, 2014 at 8:34 AM, kamrik <git@git.apache.org> wrote:
> >
> > > Github user kamrik commented on a diff in the pull request:
> > >
> > >     https://github.com/apache/cordova-lib/pull/21#discussion_r13137628
> > >
> > >     --- Diff: cordova-lib/src/plugman/platforms/android.js ---
> > >     @@ -80,10 +84,115 @@ module.exports = {
> > >          },
> > >          "framework": {
> > >              install:function(source_el, plugin_dir, project_dir,
> > > plugin_id) {
> > >     -            events.emit('verbose', 'framework.install is not
> > > supported for android');
> > >     +            var src = source_el.attrib.src;
> > >     +            var custom = source_el.attrib.custom;
> > >     +            if (!src) throw new Error('src not specified in
> > framework
> > > element');
> > >     +
> > >     +            events.emit('verbose', "Installing Android library: "
> +
> > > src);
> > >     +            var parent = source_el.attrib.parent;
> > >     +            var parentDir = parent ? path.resolve(project_dir,
> > > parent) : project_dir;
> > >     +            var subDir;
> > >     +            if (custom) {
> > >     +                subDir = path.resolve(project_dir, src);
> > >     +            } else {
> > >     +                var localProperties =
> > > properties_parser.createEditor(path.resolve(project_dir,
> > > "local.properties"));
> > >     +                subDir =
> > path.resolve(localProperties.get("sdk.dir"),
> > > src);
> > >     +            }
> > >     +            var projectConfig =
> > > module.exports.parseProjectFile(project_dir);
> > >     +            projectConfig.addSubProject(parentDir, subDir);
> > >              },
> > >              uninstall:function(source_el, project_dir, plugin_id) {
> > >     -            events.emit('verbose', 'framework.uninstall is not
> > > supported for android');
> > >     +            var src = source_el.attrib.src;
> > >     +            if (!src) throw new Error('src not specified in
> > framework
> > > element');
> > >     +
> > >     +            events.emit('verbose', "Uninstalling Android library:
> "
> > +
> > > src);
> > >     +            var parent = source_el.attrib.parent;
> > >     +            var parentDir = parent ? path.resolve(project_dir,
> > > parent) : project_dir;
> > >     +            var subDir = path.resolve(project_dir, src);
> > >     +            var projectConfig =
> > > module.exports.parseProjectFile(project_dir);
> > >     +            projectConfig.removeSubProject(parentDir, subDir);
> > >              }
> > >     +    },
> > >     +    parseProjectFile: function(project_dir){
> > >     +        if (!projectFileCache[project_dir]) {
> > >     +            projectFileCache[project_dir] = {
> > >     --- End diff --
> > >
> > >     This is an inline definition of a pretty rich object with non
> trivial
> > > methods. I think it will be way more readable to define a separate
> class
> > > like AndroidProjectFile (naming is up to you) and have this line look
> > like
> > > this:
> > >     projectFileCache[project_dir] = new AndroidProjectFile(...);
> > >
> > >     I would even define the AndroidProjectFile class in a separate js
> > > file, this way other platforms similar to Android might reuse or
> subclass
> > > it if they want.
> > >     The windows8 parser does something similar with the
> util/w8jsproj.js
> > >
> > >     Otherwise LGTM.
> > >
> > >
> > > ---
> > > If your project is set up for it, you can reply to this email and have
> > your
> > > reply appear on GitHub as well. If your project does not have this
> > feature
> > > enabled and wishes so, or if the feature is enabled but not working,
> > please
> > > contact infrastructure at infrastructure@apache.org or file a JIRA
> > ticket
> > > with INFRA.
> > > ---
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message