Commit Graph
100 Commits
Author SHA1 Message Date
Louis DeJardin c40f2c9a66 Perf: lazy scheduled publish utc value
--HG--
branch : dev
2010-05-17 14:51:40 -07:00
Louis DeJardin 542e343e84 Fixing tests
--HG--
branch : dev
2010-05-16 23:34:08 -07:00
Louis DeJardin 48be8159b9 Perf: lazy-loading more information which is used infrequently
site id is cached for SiteService.GetSiteSettings performance
HasComments part loads collections on demand
HasTags part loads collections on demand

--HG--
branch : dev
2010-05-16 19:47:51 -07:00
Louis DeJardin 98c1d931e0 Missed a file in previous commit
--HG--
branch : dev
2010-05-16 18:40:51 -07:00
Louis DeJardin 65db8d7f07 Perf: lazy-loading for ContentPart<TRecord>.Record property
Content item parts that are not referenced do not need to acquire their data

--HG--
branch : dev
2010-05-16 18:40:15 -07:00
Louis DeJardin 8024deca78 Perf: content manager improvements
Adding adding content manager session to hold items which have been loaded during a request
Altering the routine that determines which version of an item is needed to favor the inmemory collection over direct query where possible

--HG--
branch : dev
2010-05-16 17:02:55 -07:00
Louis DeJardin 04a53cb2d1 Moving media, appdata, and vpp services into Orchard.FileSystems namespace
--HG--
branch : dev
2010-05-16 13:35:35 -07:00
Louis DeJardin d46d94f1ee Building out caching
Passing along signal of VPP file monitoring
Expiring results as appropriate in AvailableExtensions

--HG--
branch : dev
2010-05-16 12:59:04 -07:00
Louis DeJardin c138cc996d Incremental work towards cache/volatile system
--HG--
branch : dev
2010-05-14 22:30:16 -07:00
Louis DeJardin e876cf8928 Merge
--HG--
branch : dev
2010-05-12 20:52:37 -07:00
Louis DeJardin 3abc44e773 Fixing unit tests and adjusting mechanics related to events for host layer components
DefaultOrchardHost may now implement eventhandler interfaces directly
DefaultOrchardHostEventSink assistant is obsolete for that reason
DefaultOrchardEventBus changed to use interface methodinfo rather than class methodinfo
OrchardStarter includes EventsModule with root container to allow components to receive event firing proxies
Special case added to CompositionStrategy to prevent DefaultOrchardHost from being re-registered when shell container is built
EventsModule is internal to prevent it from being re-registered in the same way

--HG--
branch : dev
2010-05-12 20:52:00 -07:00
Louis DeJardin 87e4874968 Merge
--HG--
branch : dev
2010-05-12 19:29:15 -07:00
Louis DeJardin 49d29db0ca Moving some code around for migration to new events mechanism
ShellSettings and ShellDescriptor string-named events removed
IShellSettingsManager and IShellDescriptorManager have associated event interfaces
Orchard host event sink forwards those two interfaces to default orchard host (special case - orchard host can't enlist normally)

--HG--
branch : dev
2010-05-12 19:28:18 -07:00
Louis DeJardin 07a0521458 Adding a Readme.txt to the Orchard.Profile class library
--HG--
branch : dev
2010-05-06 14:22:08 -07:00
Louis DeJardin 3fef79382e Adding a Readme.txt to the Orchard.Profile class library
--HG--
branch : dev
2010-05-06 14:03:41 -07:00
Louis DeJardin 3af94516bb Removing "Class1.cs" reference from a project
--HG--
branch : dev
2010-05-06 13:46:47 -07:00
Louis DeJardin 17fcea6e86 Initial roughing out of some profiling context
wcat binaries (http://www.iis.net/community/default.aspx?tabid=34&g=6&i=1466)
Orchard.Profiling project to hold some wcat scripts for generating stress-style load and specflow features for generating fixed sets of requests
"add profiling data" command in Orchard.DevTools to create a number of samples page and blog content items
"build.cmd profiling" target creates build\Profiling web dir from clean build, and execs baseline setup and population via orchard cmdline

--HG--
branch : dev
2010-05-06 12:53:27 -07:00
Louis DeJardin f9dd75ad9e Merge
--HG--
branch : dev
2010-05-03 11:19:34 -07:00
Louis DeJardin a9ad0497d1 Missed a change
--HG--
branch : dev
2010-05-03 11:18:59 -07:00
Louis DeJardin ae2c225070 Adjusting Orchard.Media module for storage path conventions
IMediaService no longer calculates root path as physical folder
Public urls are provided by IStorageProvider

--HG--
branch : dev
2010-05-03 11:18:10 -07:00
Louis DeJardin f60608368c Adjusting FileSystemStorageProvider path semantics
All path information coming in and out is within a tenant-specific location
The location is now an implementation detail of the component

--HG--
branch : dev
2010-04-30 10:02:16 -07:00
Louis DeJardin ee29c52141 Updating name of event in unit test
--HG--
branch : dev
2010-04-28 12:53:44 -07:00
Louis DeJardin f892a18588 Removed one other place non-test code was calling Reinitialize_Obsolete
--HG--
branch : dev
2010-04-28 12:46:29 -07:00
Louis DeJardin cadfd78c55 Orchard host recreates shell context based on significant events
At the moment the events related to shell settings and shell descriptor changes will cause the host to rebuild their compositions.

--HG--
branch : dev
2010-04-28 12:44:16 -07:00
Louis DeJardin 963c159743 Adding prefix adjustment in route matches
Complications with login make this impractical for the time being, but mechanically it does work to some extent.

--HG--
branch : dev
2010-04-28 11:36:27 -07:00
Louis DeJardin 152d8dea15 Updating tracing and adding specflow support for command handlers
--HG--
branch : dev
2010-04-26 11:36:55 -07:00
Louis DeJardin 0c6ae8b8d7 Nearly working integration of multi tenancy components
Tenant service provides refresh signal to host (temporary need)
Setup module changed to run in any named shell that is uninitialized
Table prefix added to setup form (for when sql server option is selected)
CreateSetupContext takes shellsettings to support uninitialized tenants
Removed name on default route provider - adding several routes by same name not allowed in single appdomain

--HG--
branch : dev
2010-04-23 17:05:28 -07:00
Louis DeJardin 4b15c18ce0 Integrating routing work into project
Uncommenting old route collection publisher tests
Factoring wrapping handler into async and non-async cases
Adding [IContainerProvider] to datatokens at the time the routedata is matched

--HG--
branch : dev
2010-04-23 11:45:30 -07:00
Louis DeJardin ca222e60f7 Implementing and testing request-to-shell mapping in RunningShellTable
Trailing host and leading path equality is required (by ordinal-ignore-case)
Longest stated host name is primary quality consideration for selection
Longest stated path prefix is secondary quality consideration, for shells of equal stated host names
Single unqualified shell matches only if all qualified shells fail first statment
'Default' unqualified (no stated host/path) shell takes precidence over other unqualified shells
No match occurs if 'Default' is qualified, multiple other shells are unqualified, and no qualified match occurs

--HG--
branch : dev
2010-04-22 19:35:31 -07:00
Louis DeJardin 1fa348b6b6 Adding request url data to settings struct and making name of prefix more specific
--HG--
branch : dev
2010-04-22 16:06:07 -07:00
Louis DeJardin e33a8e99d2 Merge
--HG--
branch : dev
2010-04-22 15:57:29 -07:00
Louis DeJardin 7014534b5b Fixing some spec tests
Orchard.Themes is one of the modules needed to function
Cleaning up some of the trace capture code

--HG--
branch : dev
2010-04-22 15:57:08 -07:00
Louis DeJardin b12ded8eb5 Merge
--HG--
branch : dev
2010-04-22 12:25:03 -07:00
Louis DeJardin 79431a11a2 Further progress towards tenant-specific routing
Ability to follow redirects from integration tests
Route publisher wraps handler with ShellRoute which controls request lifetime scope
ShellRoute at the moment is restricted to "Default" - host and prefix TBD
Route publisher remove-and-insert routes for a specific tenant to allow incremental and repeated shell route publish
Offers a more deterministic knowledge of which shell container is used than just-in-time http context
Removes Autofac default httpmodule, controller factory, httpapplication icontainerprovideraccessor, etc
Adds support for optional ~/Config/Sites.{yourtenantname}.config file for manual per-shell component override
Integration tests capture Orchard and NHibernate trace output. Levels are configurable in orchard.specs diagnostics.config
Concept of IRunningShellTable instroduced. Might not be needed - will be removed if so.

--HG--
branch : dev
2010-04-22 12:23:58 -07:00
Louis DeJardin eaf553b048 Working towards routing support for miti-tenancy
Adding large-grained initialization steps for integration tests
Fixing a collection issue with shell descriptor records and manager
Adding index action to tenants controller

--HG--
branch : dev
2010-04-21 19:41:37 -07:00
Louis DeJardin c0fac8d2ca Merge
--HG--
branch : dev
2010-04-21 15:01:30 -07:00
Louis DeJardin 19e694834d Setup integration test working
Added (very bad) cookie support to integration test lib
Workaround to resolving collections appears to have worked

--HG--
branch : dev
2010-04-21 15:01:01 -07:00
Louis DeJardin 583138c7ed Updating Autofac.dll with small change for implicit collections issue
--HG--
branch : dev
2010-04-21 13:51:26 -07:00
Louis DeJardin e750edb514 Found what could be an Autofac bug
Made a test for repro and emailed the autofac group

--HG--
branch : dev
2010-04-21 00:36:36 -07:00
Louis DeJardin 5a07a5a8c4 Fixing more tests
Default Orchard host tests provides test components explicitly for resolving
Simple hosting tests use site in it's own basic folder

--HG--
branch : dev
2010-04-20 16:11:48 -07:00
Louis DeJardin a03f0278f7 Merge
--HG--
branch : dev
2010-04-20 15:07:33 -07:00
Louis DeJardin 31995c55ca Setup submit scenario works
Minimum modules are copied
Form is submitted
Redirect is verified (should have a step to follow redirect)
Also changed .Named to .Keyed in a controller test

--HG--
branch : dev
2010-04-20 15:07:00 -07:00
Louis DeJardin ef8e3d4cce Merge
--HG--
branch : dev
2010-04-20 14:28:31 -07:00
Louis DeJardin 699d4c0f4d Merge
--HG--
branch : dev
2010-04-20 14:28:19 -07:00
Louis DeJardin 299a4ba74d Working SpecFlow POST support
Step named: When I hit "x"
locates input type submit with value "x"
locates the form surrounding that input
and sends a POST request to the embedded web host with all of the input values of that form element
Also added step: Given I have a clean site with
as a large-grained copier of extensions

--HG--
branch : dev
2010-04-20 14:27:43 -07:00
Louis DeJardin 5b3c213de4 Incremental work towards getting SpecFlow form "POST"
--HG--
branch : dev
2010-04-20 14:13:14 -07:00
Louis DeJardin fc6acf68e1 Fixing an issue with order-of-execution in setup
Database created and schema generated before the rest of the setup info is applied
Known set of minimum modules are used to generate schema, and are saved in the shell's records

--HG--
branch : dev
2010-04-19 18:29:45 -07:00
Louis DeJardin ffa92f76e9 Passing along ShellSettings to apply DataPrefix to RecordTopology
--HG--
branch : dev
2010-04-19 16:52:22 -07:00
Louis DeJardin 78d5711e1a Creating feature for extension name implicitly
Supports existing module.txt file format
Reduces the size of a minimalistic descriptor file

--HG--
branch : dev
2010-04-19 16:34:35 -07:00
Louis DeJardin 1800c632b6 Refactoring ShellTopology slightly
Merging IModule and IDependency information in ShellTopology
Avoids conceptual collision with Orchard Modules and Autofac IModule components

--HG--
branch : dev
2010-04-19 16:21:20 -07:00
Louis DeJardin 4ea2ff7327 Adding comments to some environment model classes
--HG--
branch : dev
2010-04-19 15:48:05 -07:00
Louis DeJardin 9495f5c557 Must remember to save all before commit
--HG--
branch : dev
2010-04-19 14:25:16 -07:00
Louis DeJardin 8d78fee02b Renaming ShellTopologyDescriptor to ShellDescriptor
More accurate and terse
Associated tests, interface, component names changed to follow suit

--HG--
branch : dev
2010-04-19 13:51:15 -07:00
Louis DeJardin 7c793f4e0a Cleaning up and fixing some tests. Refactoring.
Using auto mocking instead of some null stubs. Unclear if that practice will be adopted.
Builtin Orchard.Framework feature definition moved from ExtensioManager to CompositionStrategy

--HG--
branch : dev
2010-04-19 12:25:53 -07:00
Louis DeJardin 3509843b48 Compacting code and removing some obsolete things
--HG--
branch : dev
2010-04-17 22:14:31 -07:00
Louis DeJardin 71e019a0b8 Incremental changes towards enabling setup module
Setup controller can render initial screen
SafeMode container factory moved into Orchard.Setup module
ShellBuilders namespace files compacted a bit
Core feature named "Orchard.Framework" and is not used in setup mode

--HG--
branch : dev
2010-04-17 21:33:36 -07:00
Louis DeJardin a137d84732 Working towards re-enabling setup context
--HG--
branch : dev
2010-04-17 19:22:26 -07:00
Louis DeJardin 1cfaae90b8 Building out composition strategy
Four main component types are populated from topology
Additional information for table/area/controller name populated
Some core types for records added automatically

--HG--
branch : dev
2010-04-17 17:03:07 -07:00
Louis DeJardin 6fb6ef0033 Relocating extensions to environment namespace
--HG--
branch : dev
2010-04-17 16:09:53 -07:00
Louis DeJardin 00d235c717 Merge
--HG--
branch : dev
2010-04-16 20:58:47 -07:00
Louis DeJardin ff96ad73ea Incremental change refactoring modularity
--HG--
branch : dev
2010-04-16 20:50:01 -07:00
Louis DeJardin a1c639bd0f Roughing in tests around topology descriptor manager
Implementation in settings module intended to live inside shell with access to current irepostory<> orm
Basic tests around serial numbers and initial conditions and update behaviors
Also sets expectations around event raising

--HG--
branch : dev
2010-04-15 02:27:55 -07:00
Louis DeJardin 8508a860cc Incomplete commit
--HG--
branch : dev
2010-04-15 01:21:03 -07:00
Louis DeJardin aee044781c Small changes to model/interfaces
Cropping some data
Adding an Update method, and renaming to ITopologyDescriptorManager

--HG--
branch : dev
2010-04-15 01:16:13 -07:00
Louis DeJardin 122ea0b629 Reimplementing DefaultShellContainerFactory : IShellContainerFactory
Based on new interface which takes ShellTopology and returns ILifetimeScope
Other partial changes to DefaultOrchardHost
Several tests and web app currently broken

--HG--
branch : dev
2010-04-15 00:52:58 -07:00
Louis DeJardin a302fefbdf Merge
--HG--
branch : dev
2010-04-14 19:18:12 -07:00
Louis DeJardin d9598d020f Adding a specific component to orchetrate the creation of a shell context
--HG--
branch : dev
2010-04-14 18:22:23 -07:00
Louis DeJardin f6f73cca9c Merge
--HG--
branch : dev
2010-04-14 15:53:51 -07:00
Louis DeJardin c319bf2e6b Adding tests and placeholder implementation of TopDescCache
--HG--
branch : dev
2010-04-14 15:53:28 -07:00
Louis DeJardin 1c00ffb3b6 Adding implementation notes to some service interfaces
--HG--
branch : dev
2010-04-14 15:07:12 -07:00
Louis DeJardin 247e077d2c Fixing some badly resolved merge conflicts
--HG--
branch : dev
2010-04-14 14:50:53 -07:00
Louis DeJardin cef5d9bb3d Merge
--HG--
branch : dev
2010-04-14 14:45:34 -07:00
Louis DeJardin 83db3cd3d3 Roughing in service interfaces and models for shell topology work
Some existing types refactored _Obsolete suffix to indicate it's replaced w/out breaking exising usage

--HG--
branch : dev
2010-04-14 14:43:57 -07:00
Louis DeJardin 4b24886423 Using FluentPath assembly
Deprecates PathUtil utility class

--HG--
branch : dev
2010-04-14 12:50:00 -07:00
Louis DeJardin c416ed1f53 Integrating SpecFlow
asp.net inprocess appdomain utilized for integration style testing
feature files generate nunit tests at "save time" with vs specflow 1.2 installed
micro orchard site created dynamically in temp folder as a given step
cross-domain delegate invokation based on the excellent work of Steve Sanderson http://blog.stevensanderson.com/

--HG--
branch : dev
2010-04-14 10:28:33 -07:00
Louis DeJardin 52a4a18f3c Merge default -> dev
--HG--
branch : dev
2010-04-14 10:23:12 -07:00
Louis DeJardin e070353631 Removing some commented code
--HG--
branch : dev
2010-04-08 10:11:56 -07:00
Louis DeJardin 26add78779 Adjusting registration of dependencies to avoid duplications
Types are registered once and multiple interfaces result in several services being associated with that component.
Any singleton or transient interfaces will adjust the lifecycle of the entire component.

--HG--
branch : dev
2010-04-07 17:55:38 -07:00
Louis DeJardin d77526259b Moving Host.config over to ~/Config instead of ~/App_Data
Assumes you may want to consider it's settings not quite as portable as tenant info

--HG--
branch : dev
2010-04-07 17:32:34 -07:00
Louis DeJardin ef50916694 Forcing Hg to add Sample.Host.config in App_Data
--HG--
branch : dev
2010-04-07 17:29:24 -07:00
Louis DeJardin 36622bb303 Renaming Host.config to avoid collisions with user files
--HG--
branch : dev
2010-04-07 17:03:45 -07:00
Louis DeJardin 39dfe31ee2 Merge
--HG--
branch : dev
2010-04-07 17:02:27 -07:00
Louis DeJardin 0856fce9a4 Adding file-based configurability
optional ~/App_Data/Host.config file will modify root container registrations
not implemented stub for azure tenant storage added

--HG--
branch : dev
2010-04-07 16:59:21 -07:00
Louis DeJardin 7172a784c0 Fixing an incomplete save/merge for previous commit
--HG--
branch : dev
2010-04-07 15:41:43 -07:00
Louis DeJardin ca0859f32b Merge
--HG--
branch : dev
rename : src/Orchard.Tests/Orchard.Tests.csproj => src/Orchard.Tests/Orchard.Framework.Tests.csproj
rename : src/Orchard/Orchard.csproj => src/Orchard/Orchard.Framework.csproj
2010-04-07 15:36:18 -07:00
Louis DeJardin 476abfc409 Changing shell settings loader to prep for multi-tenancy work
Adding data prefix property
Moving to a different yaml library
Renaming IShellSettingsLoader and ShellSettingsLoader to ITenantManager and DefaultTenantManager
Avoiding use of MapPath in the appdatafolder abstraction

--HG--
branch : dev
2010-04-07 15:34:38 -07:00
Louis DeJardin 80007a5101 Allowing modules to add interceptors to registered components
Removes reference to Autofac contrib dynamicproxy assembly
Shell factories enable dynamic proxy as dependencies are registered
CurrentUser and CurrentSite interceptors updated for new api
Castle.DynamicProxy2 v2.1 is used to avoid rebuilding nhib binaries

--HG--
branch : dev
2010-04-07 13:30:18 -07:00
Louis DeJardin a2e58f9470 Troubleshooting automated build
Server has a different implementation of NUnit task.
Using x86 sqlite for that environment.

--HG--
branch : dev
2010-04-05 14:01:56 -07:00
Louis DeJardin 85a08396dd Initial SpecFlow project and adjusting for x64 testing
Added bits from SpecFlow 1.2 install
Added lib/specflow libraries and nearly empty Spec test project
Updating Orchard.proj to use NUnit task and locate test projects by pattern instead of fixed list

--HG--
branch : dev
2010-04-05 13:30:02 -07:00
Louis DeJardin 2943b7887e Allowing first RC in addition to RTM and RC2 when found in GAC
--HG--
branch : dev
2010-03-11 14:38:29 -08:00
Louis DeJardin 0d07a3c691 Merge
--HG--
branch : dev
2010-03-11 14:09:49 -08:00
Louis DeJardin 820c71a01a Updating Orchard to ASP.NET MVC 2 RTM
Binaries taken from installation of public download
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=c9ba1fe1-3ba8-439a-9e21-def90a8615a9
Version check updated to allow Orchard to run with RTM or RC2 of System.Web.Mvc.dll in GAC

--HG--
branch : dev
2010-03-11 14:08:54 -08:00
Louis DeJardin 0320862826 Providing designer notes html for zones
IZoneManagerEvents interface added to inject designer notes in empty zones
Static html file matching zone names displayed when nothing else is in that location
An Edit link simulates the look of an html widget
Clicking it creates a widget with the designer notes html
Code that calculates media path refactored and moved to viewmodel state

--HG--
branch : dev
2010-03-06 01:25:17 -08:00
Louis DeJardin a238d0e0d0 Relocating the default role/permission assignments
Now that there is a SetupController that is a more appropriate place to simulate
one-time-only module activation. This avoids a problem where default permissions
would be re-applied when the app domain restarted.

--HG--
branch : dev
2010-03-03 17:36:54 -08:00
Louis DeJardin bcaa4462ec Changing the MVC hint path
Invalid hint path causes problems on some machines

--HG--
branch : dev
2010-03-03 17:35:25 -08:00
Louis DeJardin ed4314ef2a Merge
--HG--
branch : dev
2010-03-03 16:38:40 -08:00
Louis DeJardin 3d7a6a517b Adding a Futures project to hold Widget concept
Conceptual implementation of Widget and HasWidgets parts
Adds "HtmlWidget" content type and "Widget" display type
WidgetFilter adds widget display view models to named zones (for non-admin requests)

--HG--
branch : dev
2010-03-03 11:32:00 -08:00
Louis DeJardin 93362781a7 Merge
--HG--
branch : dev
2010-03-01 18:03:15 -08:00
Louis DeJardin a6f56b97d5 [Themed] attribute signals the use Orchard theming w/out BaseViewModel
ThemeFilter detects attribute at action time or TModel at result time
LayoutViewEngine uses ThemeFilter.IsApplied the same way AdminFilter.IsApplied is used
Themed(false) at an action will override [Themed(true)] or [Themed] at a controller level

--HG--
branch : dev
2010-03-01 18:02:48 -08:00
Louis DeJardin 1fb4b305e4 Merge
--HG--
branch : dev
2010-03-01 16:54:27 -08:00