History log of /ontohub/lib/router_constraints.rb
Revision Date Author Comments Expand
5a102b3c56d4ac75632c7e9244ee0ce5bdbbf13a 01-Jul-2016 Sascha Graef <sgraef@informatik.uni-bremen.de>

Improve locId (#1618) * introduce new model to ontohub * introduce new locid behavior * adding try to prevent undefined method for nil * generate the locids by object creation * introduce method to simulate an attribute * generate Locids correctly for ontologies * correct creation of child_ontology locids * remove old uniqueness validation for ontology locid * use better names vor locidportion * correct behaviour for locid creation * generate loc_id correctly for ontology * use correct class for inherritanc * remove locids on deletion of objects * rename the base model * introduce data-migration to move the locids * remove double naming in the cat ontology * obey hound * correct behaviour of external repository for locid * change factory behaviour for locid * fix missing comma * begin to fix test * change ontology factory to new locid * change factories for new LocId Model * remove unneeded test * Use proper class retrieval in factories. * Always use to_s on the class call in LocIdBaseModel. * Always use .class.to_s instead of .class when used for the database. * Fix external repository. * Be clean and unstub again. * Fix sentence factory. * Quick fix the destruction of locids. * Fix code style. * Generate locids during create process: Base class. * Generate locids during create process: Mapping. * Generate locids during create process: Sentence. * Generate locids during create process: Symbol. * Generate locids during create process: ProofAttempt. * Generate locids during create process: ProverOutput. * Generate locids during create process: Ontology #1. * Generate locids during create process: Ontology #2. * Generate locids during create process: Ontology #3. * Generate locids during create process: Factories. * Fix seeds errors. * Fix ontology spec on error while parsing The ontology needs to be reloaded because sidekiq does so as well. It always fetches a fresh record from the database. The test failed before because `NodeEvaluationHelper#clean_ontology` called destroy on all the ontology's symbols which existed in the object, but were not really persisted because of an aborted transaction. * Remove redundant space. * Move comment to the correct line. * Fix worker_spec In the production code, the locid is never set before saving the ontology. * Add gems pry-stack_explorer, awesome_print for debugging purposes. * Only start hets if there was a hets error and rollback the changes. * Destroy dependent prover output. * Fix ProofAttempt factory. * Rename assorted_object to specific and fix migration. * Fix migration code style. * Reanalyze ontologies with duplicate locids. * Fix code style. * Remove redundancies. * Remove useless association. * Obey Hound. * Directly query in the LocIdBaseModel. * Add locid routing feature. * Cache LocId query results This should speed up the routing in a great extent. For each matching `specified_get`, the LocIdRouterConstraint fetched the element once from the database. This resulted in 8 times the same SQL query for a ProofAttempt. The implemented cache reduces this to a single query. * Clear the elements cache periodically to prevent memory leaks. * Add missing dependent: :destroy. * Add Recreating repository feature. * Combine if statements. * Change Given to When. * Catch ambiguous locid error. * Fix i18n key usage. * Fix code style. * Comment on error suppression. * Add spec for Syntax Error. * Use single-quoted strings. * Fix error message check: language. * Keep parameter assignment DRY. * Rename RecreatingRepository feature to Repository. * Use local_variable_get instead of eval. * Change locid column type to text. * Implement (implicit) down-migration. * Implement (explicit) down migration. * Add migration to create missing locids. * Fix nil error. * Really fix nil error. * Fix migration. * Fix sentence migration accessing association. * Force old Mappings to have a name. * Add missing locids to symbols.

/ontohub/Gemfile /ontohub/Gemfile.lock /ontohub/app/models/loc_id.rb /ontohub/app/models/loc_id_base_model.rb /ontohub/app/models/mapping.rb /ontohub/app/models/ontology.rb /ontohub/app/models/ontology/associations_and_attributes.rb /ontohub/app/models/ontology/class_methods_and_scopes.rb /ontohub/app/models/ontology/mappings.rb /ontohub/app/models/ontology/sentences.rb /ontohub/app/models/ontology/symbols.rb /ontohub/app/models/ontology/validations.rb /ontohub/app/models/ontology_member/symbol.rb /ontohub/app/models/proof_attempt.rb /ontohub/app/models/prover_output.rb /ontohub/app/models/sentence.rb /ontohub/config/locales/en.yml /ontohub/db/data/20160310132620_move_loc_id_to_own_model_data.rb /ontohub/db/migrate/20160110133824_create_loc_ids.rb /ontohub/db/migrate/20160310132618_enter_name_for_mappings.rb /ontohub/db/migrate/20160310132619_create_missing_locids.rb /ontohub/db/migrate/20160310132620_move_loc_id_to_own_model.rb /ontohub/db/seeds/040-git.rb /ontohub/features/LocId.feature /ontohub/features/LocIdRouting.feature /ontohub/features/Repository.feature /ontohub/features/step_definitions/loc_id_routing_steps.rb /ontohub/features/step_definitions/loc_id_steps.rb /ontohub/features/step_definitions/repository_steps.rb /ontohub/features/support/env.rb external_repository.rb hets/dg/node_evaluation_helper.rb hets/dg/node_evaluator.rb hets/errors.rb ontology_saver.rb permissionable.rb router_constraints.rb /ontohub/spec/controllers/api/v1/proof_attempts_controller_spec.rb /ontohub/spec/controllers/api/v1/prover_outputs_controller_spec.rb /ontohub/spec/factories/axiom_factory.rb /ontohub/spec/factories/mapping_factory.rb /ontohub/spec/factories/mapping_version_factory.rb /ontohub/spec/factories/ontology_factory.rb /ontohub/spec/factories/proof_attempt_factory.rb /ontohub/spec/factories/sentence_factory.rb /ontohub/spec/factories/symbol_factory.rb /ontohub/spec/factories/theorem_factory.rb /ontohub/spec/fixtures/ontologies/casl/sentence_and_symbol_with_same_name.casl /ontohub/spec/hets_helper.rb /ontohub/spec/lib/ontology_batch_parse_worker_spec.rb /ontohub/spec/lib/worker_spec.rb /ontohub/spec/models/ontology_spec.rb /ontohub/spec/models/ontology_version/parsing_spec.rb /ontohub/spec/support/common_helper_methods.rb /ontohub/spec/support/fixtures_generation/pipeline_generator.rb
5af5b2ebdc340fa37e797a9d9b4f16ff75d1674b 05-Jun-2015 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Remove MMT-style URI support from RefIRIRouterConstraint.

1365c7c52c67284d3c305ed7cbc2f22a20de7acf 02-Jun-2015 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Pass access token on redirect, fix IRI constraint The IRI constraint fix is temporary. It will be removed as soon as the final RouterConstraints are implemented.

d2b14c912448ef770152148c9bc712d3587f3f98 27-Apr-2015 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Add API ProofStatusesController and its routes.

ca9f469e3ad21cf8667a2a6599a0e09ca733e82c 27-Apr-2015 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Allow locid-subroutes of ProofAttempts.

cdb9042fcac58e5e1455774bb420c84e7b319c13 31-Mar-2015 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Add support for theorem sub-pages.

6f84d8dbc4edca35b7e69c8296a257ea17e3b74f 10-Mar-2015 Tim Reddehase <robustus@rightsrestricted.com>

support text for api ontologyversions controller.

10be32b36246121321399ec3ab26d4d723d550e3 10-Mar-2015 Tim Reddehase <robustus@rightsrestricted.com>

mv ontology-version api handling to api namespace This will actually support a show on ontology-versions via json.

03ec1d0391beb40e0ae66a73cf99554e1ca6fa15 16-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

fix iri-ref router constraint to handle escapes When we access the path we will get a version that still contains percent-escapes, we'll need to unescape them to do the iri-check.

4949048bda09e116ee3627383e831455954cbe41 16-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

support MMT-style ref-based loc/ids.

c4f318dca9446ec8beb46dc5695d4435f1c12d5b 16-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

add/replace to params in loc-id-router constraint Instead of completely replacing the params with a new set of values, we keep the old keys and values but overwrite them where necessary.

81a6387a4ab56a24194ecbabd6609c6bcca568b7 16-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

convert ref-version route to generalized specroute This route should support, with the help of the OntologyVersionFinder, multiple reference arguments, e.g. version-numbers, commits, branches and so forth.

80021fb6bde14c39046950cdbaaadf767d173f94 08-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

fix MIME-Type router constraint for tests It seems there is a problem where the accepts array is actually equal to [nil] in cucumber/capybara tests. In order to circumvent this we'll default to true for MIME-Type checks in these cases.

c4cb6bccad9d72c8b284075f716fc9095b3f3be2 04-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

adjust loc/id router constraint for command part There is now a COMMAND part to loc/ids which is separated from other elements by three slashes (///). We will need to recognize that.

d51cee8257d50d1f2d7c0818d968b32096f6b795 03-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

support symbol loc/id's, redirect to index As we currently do not have a useable symbols#show we'll use symbols#index instead to route symbol loc/id's.

0abeb43875687e94f2d551053ad09eebeff1f7c9 02-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

add a loc-id router constraint.

2794bc43ef90861870dcc134505d87b291dfe5c2 02-Feb-2015 Tim Reddehase <robustus@rightsrestricted.com>

adjust router-constraint for loc/id This includes dropping the query-string from path, as it is not necessary for standard loc/id routes. Additionally for ref/routes we do not drop the leading '/' as it is necessary per loc/id definition.

511ba3e3d7deb4a13a03ce522a99a0395acc61b7 20-Oct-2014 Tim Reddehase <robustus@rightsrestricted.com>

perform proposed hound-style fixes.

419f986abb76f6fce54b71e17f52a1deaa06dbd6 20-Oct-2014 Tim Reddehase <robustus@rightsrestricted.com>

add route for versioned iris In versioned iris the normal iri route is prefixed by a ref/:version_number in order to fetch the state of a specific version of that ontology-(member).

d9a3935fa80ce492e782d17ec22825d1708dea97 20-Oct-2014 Tim Reddehase <robustus@rightsrestricted.com>

add mime-router and grouped constraints MIME-Router will allow to filter based on mime-accepts-header and GroupedConstraint will allow to include multiple Constraint in an 'and' fashion (all constraints need to be return true).

8e47d6ce64ae5a3392b4d92867b2a83bd0dc9bbe 04-Jul-2014 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

rename Router to RouterConstraint

a847d9812b328c048773e705606b10875a929034 02-Jul-2014 Eugen Kuksa <eugenk@informatik.uni-bremen.de>

Improve routing Only routes for existing files and ontologies are considered.