Hamish Friedlander
fa37c448a5
API Reverse config extra statics control flow
...
Config system used to provide an add_static_source method, which was intended for
use by Extensions to add statics. But extensions for a class arent initialised
until at least one instance of that class is created, so before that the
Config system didnt include values from extensions
This patch reverses the control flow, so that the Config system explictly asks
each Object for its additional config sources via the new method
get_extra_config_sources. This method returns an array that can contain
string names of classes and also raw associative arrays.
The developer visible change is that Extension#add_to_class has been
deprecated. Instead there is a new method, get_extra_config, which has
the same method signature but needs to guarantee that it doesnt
cause side effects. Additionally there is no need to call
parent::get_extra_config - this is handled automatically.
2012-08-23 09:29:13 +12:00
Mateusz Uzdowski
705a29d00a
BUGFIX: fix the ClassInfo::allClasses to fetch manifest data directly
2012-04-17 14:46:07 +12:00
Simon Welsh
f07258f3cf
MINOR Update @package values to match renaming sapphire
2012-04-15 10:50:19 +12:00
Simon Welsh
3a6341a251
API-CHANGE sapphire folder can now be renamed.
2012-04-15 10:50:19 +12:00
Fred Condo
d370423825
Clean up trailing ?> per coding standard
...
All sapphire but the lang directory
2012-02-12 12:40:16 -08:00
Ingo Schommer
4056b94f75
BUGFIX Improved ClassInfo::ancestry() performance through in-memory caching and removal of unnecessary is_object() check - get_class() will complain if its not passed an object already)
2012-01-02 16:49:33 +01:00
Sam Minnee
70d40cf4df
BUGFIX: Removed use of base "Exception" class in order to avoid failures on PHPUnit 3.6.
2011-12-17 11:51:40 +13:00
Sam Minnee
da64123116
MINOR: Removed use of deprecated ClassInfo::is_subclass_of
2011-10-29 17:34:32 +13:00
Sam Minnee
e5afa25522
MINOR: Use Deprecation class to indicate deprecated methods in core.
2011-10-29 17:34:31 +13:00
ajshort
bc0a1b7a05
MINOR: Updated various methods to use new manifest methods rather than ManifestBuilder functions or globals.
2011-03-24 20:14:43 +11:00
ajshort
852920237e
MINOR: Updated ClassInfo::allClasses() and ::exists() to use $_CLASS_MANIFEST rather than $_ALL_CLASSES. This means results from ClassInfo::allClasses() are now lowercase.
2011-03-24 20:14:42 +11:00
ajshort
803e67b87d
API CHANGE: Refactored ClassInfo::subclassesFor() to traverse the child tree, rather than needing to store a list of every classes descendants.
...
API CHANGE: Updated ClassInfo::subclassesFor() so all the array keys are consistently the same as the values.
2011-03-24 20:14:41 +11:00
ajshort
f55cc7ec67
MINOR: Refactored ClassInfo::dataClassesFor() to use existing methods rather than creating the class array itself.
2011-03-24 20:14:41 +11:00
ajshort
eba1a85ead
MINOR: Refactored ClassInfo::ancestry() to use inbuilt PHP methods rather than the parent manifest.
2011-03-24 20:14:41 +11:00
ajshort
0d03348926
API CHANGE: Refactored ClassInfo::baseDataClass() to use inbuilt PHP methods, and throw an exception if the passed class is not a subclass of DataObject.
2011-03-24 20:14:38 +11:00
ajshort
d187718a3f
API CHANGE: Deprecated ClassInfo::is_subclass_of() in favour of is_subclass_of().
2011-03-22 20:49:17 +11:00
Sam Minnee
6f8baaa2c9
ENHANCEMENT #5977 Added optional argument to ClassInfo::getValidSubClasses() and removed harcoded SiteTree (from r110467)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@112843 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-19 01:31:56 +00:00
Sam Minnee
297b00606a
MINOR: recache tables if cache is empty (from r103606)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@112152 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-13 03:59:16 +00:00
Ingo Schommer
e921b376bc
API CHANGE: Don't generate TestOnly DataObjects in the database immediately; instead let test developers specify them in SapphireTest::$extraDataObjects.
...
API CHANGE: Added SapphireTest::resetDBSchema() (from r90054) (from r96734)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@102356 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-04-12 02:03:16 +00:00
Ingo Schommer
ec88536a03
API CHANGE Removed ClassInfo::ready(), use Security::database_is_ready()
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@91588 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-11-15 19:41:13 +00:00
Andrew Short
79773042be
API CHANGE: Renamed conflicting classes to have an "SS_" namespace, and renamed existing "SS" namespace to "SS_". The affected classes are: HTTPRequest, HTTPResponse, Query, Database, SSBacktrace, SSCli, SSDatetime, SSDatetimeTest, SSLog, SSLogTest, SSLogEmailWriter, SSLogErrorEmailFormatter, SSLogErrorFileFormatter, SSLogFileWriter and SSZendLog.
...
MINOR: Replaced usage of renamed classes with the new namespaced name.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@90075 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-10-26 03:06:31 +00:00
Sam Minnee
a72f7b2173
ENHANCEMENT: Added ClassInfo::is_subclass_of() for better performance
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@83789 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-08-05 04:01:22 +00:00
Sam Minnee
c7ac19f144
ENHANCEMENT: Improved performance of ClassInfo::classImplements
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@83440 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-07-31 05:40:55 +00:00
Ingo Schommer
8ae9db13c0
ENHANCEMENT Added ClassInfo::classes_for_folder()
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@80641 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-06-30 22:08:59 +00:00
Ingo Schommer
b12a00c391
MINOR phpdoc documentation
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@73509 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-22 22:59:14 +00:00
Geoff Munn
8182a015f6
API CHANGE: "SHOW TABLES" replaced with DB-specific version
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@72914 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-11 21:43:28 +00:00
Andrew O'Neil
635e2c3df6
Merged from 2.3
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@72453 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-03-04 03:44:11 +00:00
Andrew O'Neil
60f75c5ca4
Merged changes from 2.3 branch
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@71172 467b73ca-7a2a-4603-9d3b-597d59a354a9
2009-02-01 23:49:53 +00:00
Sam Minnee
5a98e83f7a
API CHANGE: Updated DB::manipulate() to be more db-agnostic.
...
API CHANGE: Moved the meat of SQLQuery's SQL generation into Database::sqlQueryToString(), to be overloaded by different database implementations.
API CHANGE: Moved the implementation of ClassInfo::hasTable() and ClassInfo::getValidSubClasses() into Database::hasTable() and Database::enumValuesForField(), to be overloaded by different database implementations.
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@66422 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-23 23:20:02 +00:00
Sam Minnee
4f6170c265
BUGFIX: Better initial-site-setup boundary condition checking needed after the manifest builder update
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65469 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-09 22:11:25 +00:00
Sam Minnee
c1d6e82248
API CHANGE: Removed manifest's dependency on database, by removing hastable information [17:47:04]
...
dquote> API CHANGE: Deprecate ClassInfo::ready() in favour of Security::database_is_ready()
dquote> API CHANGE: Create DataObject::has_own_table() to determine whether a DataObject has a table without looking at it.
dquote> API CHANGE: Exclude /tests/ directories from the manifest entirely except when tests are being run.
dquote> API CHANGE: Added ?usetestmanifest=1 flag to access the test manifest outside of test execution.
dquote> API CHANGE: Simplified Core.php manifest include to just call ManifestBuilder::include_manifest() - manifest takes care of its own cache file
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65385 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-11-06 04:51:25 +00:00
Ingo Schommer
23aa23fb60
ENHANCEMENT Added ClassInfo::classes_for_file()
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@64489 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-10-17 15:18:26 +00:00
Sam Minnee
0bd9bc4ff8
Merged changes from 2.2.2-assets - everything except the asset refactoring
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60468 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-12 02:51:33 +00:00
Ingo Schommer
9ac464cc57
(merged from branches/roa. use "svn log -c <changeset> -g <module-svn-path>" for detailed commit message)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60204 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-09 02:16:46 +00:00
Andrew O'Neil
5ca1e0b744
MINOR: Fix php notice
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@60157 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-08-08 03:52:48 +00:00
Ingo Schommer
6ebf31ba64
MINOR initializing $dataclasses properly in ClassInfo
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@58123 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-07-16 03:29:20 +00:00
Ingo Schommer
60860cc1b9
MINOR Unified @package PHPdoc (added where missing, removed duplicates)
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@56212 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-06-15 13:33:53 +00:00
Mark Rickerby
e12f87ad38
When ClassInfo::dataClassesFor is passed an instance of the class, the method now automatically coerces the instance to a string of its name
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@52675 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-04-14 04:49:08 +00:00
Sam Minnee
59d8a1ce8e
Improving API documentation
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@50453 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-03-02 23:24:10 +00:00
Matt Peel
7d13ba7fb8
Reverted geoffm's accidental commit to /open
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@50107 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-02-25 02:10:37 +00:00
Geoff Munn
bf3c09bec6
First post
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@50105 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-02-25 01:06:39 +00:00
Sam Minnee
b1d2e3906b
API Documentation updates
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@47766 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-01-09 04:18:36 +00:00
Sam Minnee
d27937f448
Updated API documentation package tags
...
Fixed some whitespace
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@47725 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-01-08 06:37:50 +00:00
Ingo Schommer
3a47be1430
fixed PHP notice in implementorsOf
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@47581 467b73ca-7a2a-4603-9d3b-597d59a354a9
2008-01-03 00:49:10 +00:00
Sam Minnee
0235aee5df
wakeless: #1823 - Improve memory usage of ManifestBuilder
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@46730 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-12-13 00:36:38 +00:00
Ingo Schommer
53016680d5
isset()-check in ready()
...
(merged from branches/gsoc)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@42153 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-09-16 17:24:24 +00:00
Hayden Smith
4a5d9b03f8
Moved Sapphire module to open source path
...
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@39001 467b73ca-7a2a-4603-9d3b-597d59a354a9
2007-07-19 10:40:28 +00:00