Sha256: 35b86a94e229e652bca35ed5ff2f519f6b6fb59808149ecda0f45bb5235b0bc2

Contents?: true

Size: 1.2 KB

Versions: 312

Compression:

Stored size: 1.2 KB

Contents

/*
 * This code is copyrighted work by Daniel Luz <dev at mernen dot com>.
 *
 * Distributed under the Ruby and GPLv2 licenses; see COPYING and GPL files
 * for details.
 */
package json.ext;

import java.io.IOException;
import java.lang.ref.WeakReference;

import org.jruby.Ruby;
import org.jruby.RubyClass;
import org.jruby.RubyModule;
import org.jruby.runtime.load.BasicLibraryService;

/**
 * The service invoked by JRuby's {@link org.jruby.runtime.load.LoadService LoadService}.
 * Defines the <code>JSON::Ext::Parser</code> class.
 * @author mernen
 */
public class ParserService implements BasicLibraryService {
    public boolean basicLoad(Ruby runtime) throws IOException {
        runtime.getLoadService().require("json/common");
        RuntimeInfo info = RuntimeInfo.initRuntime(runtime);

        info.jsonModule = new WeakReference<RubyModule>(runtime.defineModule("JSON"));
        RubyModule jsonExtModule = info.jsonModule.get().defineModuleUnder("Ext");
        RubyClass parserClass =
            jsonExtModule.defineClassUnder("Parser", runtime.getObject(),
                                           Parser.ALLOCATOR);
        parserClass.defineAnnotatedMethods(Parser.class);
        return true;
    }
}

Version data entries

312 entries across 272 versions & 47 rubygems

Version Path
scout-5.7.4 vendor/json_pure/java/src/json/ext/ParserService.java
scout-5.7.1 vendor/json_pure/java/src/json/ext/ParserService.java
scout-5.7.0 vendor/json_pure/java/src/json/ext/ParserService.java
scout-5.7.0.pre vendor/json_pure/java/src/json/ext/ParserService.java
scout-5.6.11 vendor/json_pure/java/src/json/ext/ParserService.java
scout-5.6.10 vendor/json_pure/java/src/json/ext/ParserService.java
vagrant-shell-0.2.9 demo/templates/vendor/bundle/ruby/1.9.1/gems/json-1.7.7/java/src/json/ext/ParserService.java
vagrant-shell-0.2.8 demo/templates/vendor/bundle/ruby/1.9.1/gems/json-1.7.7/java/src/json/ext/ParserService.java
classiccms-0.7.2 vendor/bundle/gems/json-1.7.3/java/src/json/ext/ParserService.java
classiccms-0.7.1 vendor/bundle/gems/json-1.7.3/java/src/json/ext/ParserService.java
swipe-rails-0.0.5 vendor/bundle/gems/json-1.8.0/java/src/json/ext/ParserService.java
swipe-rails-0.0.5 vendor/bundle/gems/json-1.7.7/java/src/json/ext/ParserService.java
active_mailer-0.0.9 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/json-1.7.7/java/src/json/ext/ParserService.java
active_mailer-0.0.8 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/json-1.7.7/java/src/json/ext/ParserService.java
active_mailer-0.0.7 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/json-1.7.7/java/src/json/ext/ParserService.java
active_mailer-0.0.6 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/json-1.7.7/java/src/json/ext/ParserService.java
scout-5.6.9 vendor/json_pure/java/src/json/ext/ParserService.java
classiccms-0.7.0 vendor/bundle/gems/json-1.7.3/java/src/json/ext/ParserService.java
font-awesome-rails-3.1.1.2 vendor/ruby/1.9.1/gems/json-1.7.7/java/src/json/ext/ParserService.java
vagrant-shell-0.2.6 vendor/bundle/gems/json-1.7.7/java/src/json/ext/ParserService.java