php-framework-skeleton

Skeleton for php-framework
git clone git://git.finwo.net/misc/php-framework-skeleton
Log | Files | Refs

commit 5e2f8801eb76664191104fed327a510a18e17366
parent c8b1c0728990d5cd0e36ce3a3f473ce2382f12e4
Author: finwo <finwo@pm.me>
Date:   Wed, 22 Feb 2017 22:42:31 +0100

Bundle & service registering ; started on controller registering

Diffstat:
A.zedstate | 2++
Mcomposer.json | 7++++++-
Mcomposer.lock | 86++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
Aconfig/services.yaml | 3+++
Msrc/Finwo/Framework/Bundle/AbstractBundle.php | 20+++++++++++++++++++-
Asrc/Finwo/Framework/Config/Config.php | 64++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/Finwo/Framework/Service/AbstractService.php | 9+++++++++
Mweb/index.php | 50+++++++++++++++++++++++++++++++++++++++++++++++++-
8 files changed, 237 insertions(+), 4 deletions(-)

diff --git a/.zedstate b/.zedstate @@ -0,0 +1 @@ +{"split":"1","session.current":["/src/Finwo/Framework/Bundle/AbstractBundle.php"],"session.open":{"/src/Finwo/Framework/Bundle/AbstractBundle.php":{"scrollTop":0,"scrollLeft":0,"selection":{"start":{"row":24,"column":0},"end":{"row":24,"column":0}},"lastUse":1487798006142,"undo":[[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":20},"end":{"row":22,"column":21}},"text":"$"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":20},"end":{"row":22,"column":21}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":21},"end":{"row":22,"column":22}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":22},"end":{"row":22,"column":23}},"text":"w"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":23},"end":{"row":22,"column":24}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":24},"end":{"row":22,"column":25}},"text":"$"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":25},"end":{"row":22,"column":26}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":26},"end":{"row":22,"column":27}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":27},"end":{"row":22,"column":28}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":28},"end":{"row":22,"column":29}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":29},"end":{"row":22,"column":30}},"text":"s"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":30},"end":{"row":22,"column":32}},"text":"()"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":32},"end":{"row":22,"column":33}},"text":";"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":30},"end":{"row":22,"column":33}},"text":"();"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":24},"end":{"row":22,"column":30}},"text":"$class"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":23},"end":{"row":22,"column":24}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":20},"end":{"row":22,"column":23}},"text":"new"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":19},"end":{"row":22,"column":20}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":17},"end":{"row":22,"column":19}},"text":" ="}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":6},"end":{"row":22,"column":17}},"text":"$controller"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":6},"end":{"row":22,"column":7}},"text":"d"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":7},"end":{"row":22,"column":8}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":8},"end":{"row":22,"column":9}},"text":"e"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":9},"end":{"row":22,"column":11}},"text":"()"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":10},"end":{"row":22,"column":12}},"text":"''"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":11},"end":{"row":22,"column":12}},"text":"R"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":12},"end":{"row":22,"column":13}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":13},"end":{"row":22,"column":14}},"text":"g"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":14},"end":{"row":22,"column":15}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":15},"end":{"row":22,"column":16}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":16},"end":{"row":22,"column":17}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":17},"end":{"row":22,"column":18}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":18},"end":{"row":22,"column":19}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":19},"end":{"row":22,"column":20}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":20},"end":{"row":22,"column":21}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":21},"end":{"row":22,"column":22}},"text":"g"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":22},"end":{"row":22,"column":23}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":23},"end":{"row":22,"column":24}},"text":"b"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":24},"end":{"row":22,"column":25}},"text":"u"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":25},"end":{"row":22,"column":26}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":26},"end":{"row":22,"column":27}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":27},"end":{"row":22,"column":28}},"text":"d"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":28},"end":{"row":22,"column":29}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":29},"end":{"row":22,"column":30}},"text":":"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":29},"end":{"row":22,"column":30}},"text":":"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":22,"column":23},"end":{"row":22,"column":29}},"text":"bunlde"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":23},"end":{"row":22,"column":24}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":24},"end":{"row":22,"column":25}},"text":"o"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":25},"end":{"row":22,"column":26}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":26},"end":{"row":22,"column":27}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":27},"end":{"row":22,"column":28}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":28},"end":{"row":22,"column":29}},"text":"o"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":29},"end":{"row":22,"column":30}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":30},"end":{"row":22,"column":31}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":31},"end":{"row":22,"column":32}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":32},"end":{"row":22,"column":33}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":33},"end":{"row":22,"column":34}},"text":":"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":34},"end":{"row":22,"column":35}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":36},"end":{"row":22,"column":37}},"text":"."}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":37},"end":{"row":22,"column":38}},"text":"$"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":38},"end":{"row":22,"column":39}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":39},"end":{"row":22,"column":40}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":40},"end":{"row":22,"column":41}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":41},"end":{"row":22,"column":42}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":42},"end":{"row":22,"column":43}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":22,"column":44},"end":{"row":22,"column":45}},"text":";"}]}],[{"group":"doc","deltas":[{"action":"removeLines","range":{"start":{"row":25,"column":0},"end":{"row":26,"column":0}},"nl":"\n","lines":[" "]}]}],[{"group":"doc","deltas":[{"action":"removeLines","range":{"start":{"row":25,"column":0},"end":{"row":26,"column":0}},"nl":"\n","lines":[" var_dump($controllerFiles);"]}]}],[{"group":"doc","deltas":[{"action":"removeLines","range":{"start":{"row":25,"column":0},"end":{"row":26,"column":0}},"nl":"\n","lines":[" die();"]}]}],[{"group":"doc","deltas":[{"action":"removeLines","range":{"start":{"row":24,"column":0},"end":{"row":25,"column":0}},"nl":"\n","lines":[" "]}]}]],"redo":[]},"/web/index.php":{"scrollTop":0,"scrollLeft":0,"selection":{"start":{"row":48,"column":22},"end":{"row":48,"column":22}},"lastUse":1487797438612,"undo":[[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":21},"end":{"row":44,"column":23}},"text":"''"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":22},"end":{"row":44,"column":23}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":23},"end":{"row":44,"column":24}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":24},"end":{"row":44,"column":25}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":25},"end":{"row":44,"column":26}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":26},"end":{"row":44,"column":27}},"text":"."}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":27},"end":{"row":44,"column":28}},"text":"p"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":28},"end":{"row":44,"column":29}},"text":"h"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":29},"end":{"row":44,"column":30}},"text":"p"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":44,"column":32},"end":{"row":44,"column":33}},"text":";"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":42,"column":0},"end":{"row":43,"column":0}},"text":"\n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":0},"end":{"row":43,"column":1}},"text":"/"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":1},"end":{"row":43,"column":2}},"text":"/"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":2},"end":{"row":43,"column":3}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":3},"end":{"row":43,"column":4}},"text":"A"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":43,"column":3},"end":{"row":43,"column":4}},"text":"A"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":3},"end":{"row":43,"column":4}},"text":"A"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":4},"end":{"row":43,"column":5}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":5},"end":{"row":43,"column":6}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":6},"end":{"row":43,"column":7}},"text":"o"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":7},"end":{"row":43,"column":8}},"text":"w"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":8},"end":{"row":43,"column":9}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":9},"end":{"row":43,"column":10}},"text":"p"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":10},"end":{"row":43,"column":11}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":11},"end":{"row":43,"column":12}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":12},"end":{"row":43,"column":13}},"text":"-"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":43,"column":12},"end":{"row":43,"column":13}},"text":"-"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":43,"column":9},"end":{"row":43,"column":12}},"text":"pre"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":43,"column":8},"end":{"row":43,"column":9}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":43,"column":3},"end":{"row":43,"column":8}},"text":"Allow"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":3},"end":{"row":43,"column":4}},"text":"H"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":43,"column":3},"end":{"row":43,"column":4}},"text":"H"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":3},"end":{"row":43,"column":4}},"text":"H"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":4},"end":{"row":43,"column":5}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":5},"end":{"row":43,"column":6}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":6},"end":{"row":43,"column":7}},"text":"d"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":7},"end":{"row":43,"column":8}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":8},"end":{"row":43,"column":9}},"text":"e"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":9},"end":{"row":43,"column":10}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":10},"end":{"row":43,"column":11}},"text":"p"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":11},"end":{"row":43,"column":12}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":12},"end":{"row":43,"column":13}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":13},"end":{"row":43,"column":14}},"text":"-"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":14},"end":{"row":43,"column":15}},"text":"f"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":15},"end":{"row":43,"column":16}},"text":"o"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":16},"end":{"row":43,"column":17}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":17},"end":{"row":43,"column":18}},"text":"k"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":18},"end":{"row":43,"column":19}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":43,"column":18},"end":{"row":43,"column":19}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":18},"end":{"row":43,"column":19}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":19},"end":{"row":43,"column":20}},"text":"d"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":20},"end":{"row":43,"column":21}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":21},"end":{"row":43,"column":22}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":22},"end":{"row":43,"column":23}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":23},"end":{"row":43,"column":24}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":24},"end":{"row":43,"column":25}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":43,"column":25},"end":{"row":43,"column":26}},"text":"t"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":47,"column":0},"end":{"row":48,"column":0}},"text":"\n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":0},"end":{"row":48,"column":1}},"text":"/"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":1},"end":{"row":48,"column":2}},"text":"/"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":2},"end":{"row":48,"column":3}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":3},"end":{"row":48,"column":4}},"text":"K"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":4},"end":{"row":48,"column":5}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":5},"end":{"row":48,"column":6}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":6},"end":{"row":48,"column":7}},"text":"k"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":7},"end":{"row":48,"column":8}},"text":"o"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":8},"end":{"row":48,"column":9}},"text":"f"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":9},"end":{"row":48,"column":10}},"text":"f"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":10},"end":{"row":48,"column":11}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":11},"end":{"row":48,"column":12}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":12},"end":{"row":48,"column":13}},"text":"h"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":13},"end":{"row":48,"column":14}},"text":"e"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":14},"end":{"row":48,"column":15}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":15},"end":{"row":48,"column":16}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":16},"end":{"row":48,"column":17}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":17},"end":{"row":48,"column":18}},"text":"q"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":18},"end":{"row":48,"column":19}},"text":"u"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":19},"end":{"row":48,"column":20}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":20},"end":{"row":48,"column":21}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":48,"column":21},"end":{"row":48,"column":22}},"text":"t"}]}]],"redo":[]},"/src/Finwo/Framework/Service/AbstractService.php":{"scrollTop":0,"scrollLeft":0,"selection":{"start":{"row":6,"column":2},"end":{"row":6,"column":2}},"lastUse":1487797395065,"undo":[[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":0},"end":{"row":0,"column":1}},"text":"<"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":1},"end":{"row":0,"column":2}},"text":"?"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":2},"end":{"row":0,"column":3}},"text":"p"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":3},"end":{"row":0,"column":4}},"text":"h"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":4},"end":{"row":0,"column":5}},"text":"p"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":5},"end":{"row":1,"column":0}},"text":"\n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":0},"end":{"row":2,"column":0}},"text":"\n"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":0},"end":{"row":2,"column":1}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":1},"end":{"row":2,"column":2}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":2},"end":{"row":2,"column":3}},"text":"m"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":3},"end":{"row":2,"column":4}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":4},"end":{"row":2,"column":5}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":5},"end":{"row":2,"column":6}},"text":"p"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":6},"end":{"row":2,"column":7}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":7},"end":{"row":2,"column":8}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":8},"end":{"row":2,"column":9}},"text":"e"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":9},"end":{"row":2,"column":10}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":10},"end":{"row":2,"column":11}},"text":"F"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":11},"end":{"row":2,"column":12}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":12},"end":{"row":2,"column":13}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":13},"end":{"row":2,"column":14}},"text":"w"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":14},"end":{"row":2,"column":15}},"text":"o"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":15},"end":{"row":2,"column":16}},"text":"\\"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":16},"end":{"row":2,"column":17}},"text":"F"}]},{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":2,"column":16},"end":{"row":2,"column":17}},"text":"F"},{"action":"insertText","range":{"start":{"row":2,"column":16},"end":{"row":2,"column":25}},"text":"Framework"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":10},"end":{"row":2,"column":11}},"text":"\\"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":26},"end":{"row":2,"column":27}},"text":"\\"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":27},"end":{"row":2,"column":28}},"text":"S"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":28},"end":{"row":2,"column":29}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":29},"end":{"row":2,"column":30}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":30},"end":{"row":2,"column":31}},"text":"v"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":31},"end":{"row":2,"column":32}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":32},"end":{"row":2,"column":33}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":33},"end":{"row":2,"column":34}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":34},"end":{"row":2,"column":35}},"text":";"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":2,"column":35},"end":{"row":3,"column":0}},"text":"\n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":3,"column":0},"end":{"row":4,"column":0}},"text":"\n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":0},"end":{"row":4,"column":1}},"text":"c"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":4,"column":0},"end":{"row":4,"column":1}},"text":"c"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":0},"end":{"row":4,"column":1}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":1},"end":{"row":4,"column":2}},"text":"b"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":2},"end":{"row":4,"column":3}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":3},"end":{"row":4,"column":4}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":4},"end":{"row":4,"column":5}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":5},"end":{"row":4,"column":6}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":6},"end":{"row":4,"column":7}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":7},"end":{"row":4,"column":8}},"text":"t"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":8},"end":{"row":4,"column":9}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":9},"end":{"row":4,"column":10}},"text":"c"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":10},"end":{"row":4,"column":11}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":11},"end":{"row":4,"column":12}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":12},"end":{"row":4,"column":13}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":13},"end":{"row":4,"column":14}},"text":"s"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":14},"end":{"row":4,"column":15}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":15},"end":{"row":4,"column":16}},"text":"A"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":16},"end":{"row":4,"column":17}},"text":"b"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":17},"end":{"row":4,"column":18}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":18},"end":{"row":4,"column":19}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":19},"end":{"row":4,"column":20}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":20},"end":{"row":4,"column":21}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":21},"end":{"row":4,"column":22}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":22},"end":{"row":4,"column":23}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":23},"end":{"row":4,"column":24}},"text":"S"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":24},"end":{"row":4,"column":25}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":25},"end":{"row":4,"column":26}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":26},"end":{"row":4,"column":27}},"text":"v"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":27},"end":{"row":4,"column":28}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":28},"end":{"row":4,"column":29}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":29},"end":{"row":4,"column":30}},"text":"e"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":30},"end":{"row":4,"column":31}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":4,"column":30},"end":{"row":4,"column":31}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":4,"column":30},"end":{"row":5,"column":0}},"text":"\n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":5,"column":0},"end":{"row":5,"column":1}},"text":"{"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":5,"column":1},"end":{"row":6,"column":0}},"text":"\n"},{"action":"insertLines","range":{"start":{"row":6,"column":0},"end":{"row":7,"column":0}},"lines":[" "]},{"action":"insertText","range":{"start":{"row":7,"column":0},"end":{"row":7,"column":1}},"text":"}"}]}]],"redo":[]},"/config/services.yaml":{"scrollTop":0,"scrollLeft":0,"selection":{"start":{"row":1,"column":17},"end":{"row":1,"column":17}},"lastUse":1487797170579,"undo":[[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":0},"end":{"row":0,"column":1}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":1},"end":{"row":0,"column":2}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":2},"end":{"row":0,"column":3}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":3},"end":{"row":0,"column":4}},"text":"v"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":4},"end":{"row":0,"column":5}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":5},"end":{"row":0,"column":6}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":6},"end":{"row":0,"column":7}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":7},"end":{"row":0,"column":8}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":8},"end":{"row":0,"column":9}},"text":":"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":0,"column":9},"end":{"row":1,"column":0}},"text":"\n"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":0},"end":{"row":1,"column":2}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":2},"end":{"row":1,"column":3}},"text":"-"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":3},"end":{"row":1,"column":4}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":3},"end":{"row":1,"column":4}},"text":" "}]},{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":2},"end":{"row":1,"column":3}},"text":"-"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":2},"end":{"row":1,"column":3}},"text":"d"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":3},"end":{"row":1,"column":4}},"text":"b"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":3},"end":{"row":1,"column":4}},"text":"b"}]},{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":2},"end":{"row":1,"column":3}},"text":"d"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":2},"end":{"row":1,"column":3}},"text":"-"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":3},"end":{"row":1,"column":4}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":3},"end":{"row":1,"column":4}},"text":" "}]},{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":2},"end":{"row":1,"column":3}},"text":"-"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":2},"end":{"row":1,"column":3}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":3},"end":{"row":1,"column":4}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":4},"end":{"row":1,"column":5}},"text":"m"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":5},"end":{"row":1,"column":6}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":6},"end":{"row":1,"column":7}},"text":":"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":7},"end":{"row":1,"column":8}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":8},"end":{"row":1,"column":9}},"text":"c"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":9},"end":{"row":1,"column":10}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":10},"end":{"row":1,"column":11}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":11},"end":{"row":1,"column":12}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":12},"end":{"row":1,"column":13}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":13},"end":{"row":1,"column":14}},"text":"n"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":14},"end":{"row":1,"column":15}},"text":"m"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":15},"end":{"row":1,"column":16}},"text":"a"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":15},"end":{"row":1,"column":16}},"text":"a"}]},{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":1,"column":14},"end":{"row":1,"column":15}},"text":"m"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":14},"end":{"row":1,"column":15}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":15},"end":{"row":1,"column":16}},"text":"m"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":1,"column":16},"end":{"row":1,"column":17}},"text":"e"}]}]],"redo":[]},"/src/Finwo/Framework/Config/Config.php":{"scrollTop":0,"scrollLeft":0,"selection":{"start":{"row":61,"column":67},"end":{"row":61,"column":67}},"lastUse":1487797037015,"undo":[[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":57,"column":25},"end":{"row":58,"column":0}},"text":"\n"},{"action":"insertText","range":{"start":{"row":58,"column":0},"end":{"row":58,"column":5}},"text":" * "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":58,"column":5},"end":{"row":59,"column":0}},"text":"\n"},{"action":"insertText","range":{"start":{"row":59,"column":0},"end":{"row":59,"column":5}},"text":" * "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":5},"end":{"row":59,"column":6}},"text":"@"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":6},"end":{"row":59,"column":7}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":7},"end":{"row":59,"column":8}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":8},"end":{"row":59,"column":9}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":9},"end":{"row":59,"column":10}},"text":"u"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":10},"end":{"row":59,"column":11}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":11},"end":{"row":59,"column":12}},"text":"n"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":12},"end":{"row":59,"column":13}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":13},"end":{"row":59,"column":14}},"text":"C"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":14},"end":{"row":59,"column":15}},"text":"o"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":15},"end":{"row":59,"column":16}},"text":"n"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":16},"end":{"row":59,"column":17}},"text":"f"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":17},"end":{"row":59,"column":18}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":18},"end":{"row":59,"column":19}},"text":"g"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":19},"end":{"row":59,"column":20}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":20},"end":{"row":59,"column":21}},"text":"$"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":21},"end":{"row":59,"column":22}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":22},"end":{"row":59,"column":23}},"text":"h"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":23},"end":{"row":59,"column":24}},"text":"i"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":59,"column":24},"end":{"row":59,"column":25}},"text":"s"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":63,"column":4},"end":{"row":63,"column":5}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":63,"column":5},"end":{"row":63,"column":6}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":63,"column":6},"end":{"row":63,"column":7}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":63,"column":7},"end":{"row":63,"column":8}},"text":"u"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":63,"column":8},"end":{"row":63,"column":9}},"text":"r"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":63,"column":9},"end":{"row":63,"column":10}},"text":"n"}]}],[{"group":"doc","deltas":[{"action":"removeLines","range":{"start":{"row":58,"column":0},"end":{"row":59,"column":0}},"nl":"\n","lines":[" * "]}]}],[{"group":"doc","deltas":[{"action":"removeLines","range":{"start":{"row":58,"column":0},"end":{"row":59,"column":0}},"nl":"\n","lines":[" * @return Config $this"]}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":61,"column":9},"end":{"row":61,"column":10}},"text":"n"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":61,"column":4},"end":{"row":61,"column":9}},"text":"retur"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":4},"end":{"row":61,"column":5}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":5},"end":{"row":61,"column":6}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":6},"end":{"row":61,"column":7}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":7},"end":{"row":61,"column":8}},"text":"f"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":8},"end":{"row":61,"column":9}},"text":":"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":9},"end":{"row":61,"column":10}},"text":":"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":10},"end":{"row":61,"column":11}},"text":"g"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":11},"end":{"row":61,"column":12}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":12},"end":{"row":61,"column":13}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":13},"end":{"row":61,"column":14}},"text":"A"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":14},"end":{"row":61,"column":15}},"text":"c"}]}],[{"group":"doc","deltas":[{"action":"removeText","range":{"start":{"row":61,"column":10},"end":{"row":61,"column":15}},"text":"getAc"},{"action":"insertText","range":{"start":{"row":61,"column":10},"end":{"row":61,"column":23}},"text":"getAccessor()"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":23},"end":{"row":61,"column":24}},"text":"-"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":24},"end":{"row":61,"column":25}},"text":">"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":25},"end":{"row":61,"column":26}},"text":"s"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":26},"end":{"row":61,"column":27}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":27},"end":{"row":61,"column":28}},"text":"t"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":28},"end":{"row":61,"column":30}},"text":"()"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":29},"end":{"row":61,"column":30}},"text":" "}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":30},"end":{"row":61,"column":31}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":30},"end":{"row":61,"column":31}},"text":"s"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":31},"end":{"row":61,"column":32}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":32},"end":{"row":61,"column":33}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":33},"end":{"row":61,"column":34}},"text":"f"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":34},"end":{"row":61,"column":35}},"text":":"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":35},"end":{"row":61,"column":36}},"text":":"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":36},"end":{"row":61,"column":37}},"text":"g"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":37},"end":{"row":61,"column":38}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":38},"end":{"row":61,"column":39}},"text":"t"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":39},"end":{"row":61,"column":40}},"text":"F"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":40},"end":{"row":61,"column":41}},"text":"u"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":41},"end":{"row":61,"column":42}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":42},"end":{"row":61,"column":43}},"text":"l"}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":43},"end":{"row":61,"column":45}},"text":"()"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":45},"end":{"row":61,"column":46}},"text":","}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":46},"end":{"row":61,"column":47}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":47},"end":{"row":61,"column":48}},"text":"$"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":48},"end":{"row":61,"column":49}},"text":"k"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":49},"end":{"row":61,"column":50}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":50},"end":{"row":61,"column":51}},"text":"y"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":51},"end":{"row":61,"column":52}},"text":","}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":52},"end":{"row":61,"column":53}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":53},"end":{"row":61,"column":54}},"text":"$"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":54},"end":{"row":61,"column":55}},"text":"v"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":55},"end":{"row":61,"column":56}},"text":"a"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":56},"end":{"row":61,"column":57}},"text":"l"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":57},"end":{"row":61,"column":58}},"text":"u"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":58},"end":{"row":61,"column":59}},"text":"e"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":59},"end":{"row":61,"column":60}},"text":","}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":60},"end":{"row":61,"column":61}},"text":" "}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":61},"end":{"row":61,"column":63}},"text":"''"}]},{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":62},"end":{"row":61,"column":63}},"text":"."}]}],[{"group":"doc","deltas":[{"action":"insertText","range":{"start":{"row":61,"column":66},"end":{"row":61,"column":67}},"text":";"}]}]],"redo":[]},"/vendor/finwo/property-accessor/src/PropertyAccessor.php":{"scrollTop":30,"scrollLeft":0,"selection":{"start":{"row":2,"column":10},"end":{"row":2,"column":33}},"lastUse":1487796962717,"undo":[],"redo":[]}},"window":{"width":1920,"height":1047,"top":0,"left":0,"isMaximized":true},"recent.commands":{"Configuration:Preferences":1487795029919}} +\ No newline at end of file diff --git a/composer.json b/composer.json @@ -4,7 +4,9 @@ "klein/klein": "^2.1", "netresearch/jsonmapper": "^1.1", "php-di/invoker": "^1.3", - "finwo/datafile": "^0.0.2" + "finwo/datafile": "^0.0.2", + "finwo/property-accessor": "^0.1.4", + "eloquent/blox": "^3.0" }, "license": "MIT", "authors": [ @@ -13,5 +15,8 @@ "email": "robin@finwo.nl" } ], + "autoload": { + "psr-4": { "": "src" } + }, "minimum-stability": "stable" } diff --git a/composer.lock b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "content-hash": "64fa08b510e6d8d6b4bc1df3e86dd320", + "content-hash": "ad8b21f1c0a8419260bfd3d4cada62a0", "packages": [ { "name": "container-interop/container-interop", @@ -38,6 +38,58 @@ "time": "2017-02-14T19:40:03+00:00" }, { + "name": "eloquent/blox", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/eloquent/blox.git", + "reference": "1f55c750a70fbbbce763fe8fb3eefa97569736ba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/eloquent/blox/zipball/1f55c750a70fbbbce763fe8fb3eefa97569736ba", + "reference": "1f55c750a70fbbbce763fe8fb3eefa97569736ba", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "require-dev": { + "icecave/archer": "~1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Eloquent\\Blox\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Erin Millard", + "email": "ezzatron@gmail.com", + "homepage": "http://ezzatron.com/" + } + ], + "description": "A parser for block comment documentation.", + "homepage": "https://github.com/eloquent/blox", + "keywords": [ + "annotation", + "block", + "comment", + "docblock", + "documentation", + "parser", + "phpDocumentor", + "phpdoc", + "tag" + ], + "time": "2014-01-26T02:51:52+00:00" + }, + { "name": "finwo/datafile", "version": "v0.0.2", "source": { @@ -73,6 +125,38 @@ "time": "2017-02-22T10:43:22+00:00" }, { + "name": "finwo/property-accessor", + "version": "v0.1.4", + "source": { + "type": "git", + "url": "https://github.com/finwo/property-accessor.git", + "reference": "b87005786dbdd368628d586b9568db6e8aec11bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/finwo/property-accessor/zipball/b87005786dbdd368628d586b9568db6e8aec11bc", + "reference": "b87005786dbdd368628d586b9568db6e8aec11bc", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Finwo\\PropertyAccessor\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "authors": [ + { + "name": "Robin Bron", + "email": "robin@finwo.nl" + } + ], + "time": "2016-05-12T11:49:48+00:00" + }, + { "name": "klein/klein", "version": "v2.1.2", "source": { diff --git a/config/services.yaml b/config/services.yaml @@ -0,0 +1,2 @@ +services: + name: classname +\ No newline at end of file diff --git a/src/Finwo/Framework/Bundle/AbstractBundle.php b/src/Finwo/Framework/Bundle/AbstractBundle.php @@ -2,7 +2,25 @@ namespace Finwo\Framework\Bundle; +use Klein\Klein; + abstract class AbstractBundle { - + public function __construct( Klein $router ) + { + // Fetch info + $class_info = new \ReflectionClass($this); + $path = dirname($class_info->getFileName()); + $controllerPath = $path . DS . 'Controller'; + + // Fetch controllers + $controllers = array(); + foreach( glob($controllerPath.DS.'*.php') as $file ) { + $class = explode("\\", get_class($this)); + array_pop($class); + $class = implode("\\", $class) . "\\Controller\\" . @array_shift(explode('.',array_pop(explode(DS,$file)))); + if(!class_exists($class)) continue; + die('Registering controller: '.$class); + } + } } diff --git a/src/Finwo/Framework/Config/Config.php b/src/Finwo/Framework/Config/Config.php @@ -0,0 +1,64 @@ +<?php + +namespace Finwo\Framework\Config; + +use Finwo\DataFile\DataFile; +use Finwo\PropertyAccessor\PropertyAccessor; + +class Config +{ + /** + * @return PropertyAccessor + */ + protected static function getAccessor() + { + static $cache = null; + if(is_null($cache)) { + $cache = new PropertyAccessor(); + } + return $cache; + } + + /** + * @return array + */ + protected static function &getFull() + { + static $cache = null; + if(is_null($cache)) { + // Detect files + $files = array(); + foreach(Datafile::$supported as $fileType) { + $files = array_merge($files, glob( APPROOT . DS . 'config' . DS . '*.' . $fileType)); + } + // Load them + $cache = array(); + foreach($files as $file) { + $cache = array_merge($cache, DataFile::read($file)); + } + } + return $cache; + } + + /** + * @param string $key + * + * @return mixed + */ + public static function get( $key = null ) + { + if(is_null($key)) { + return self::getFull(); + } + return self::getAccessor()->getSafe(self::getFull(), $key, '.'); + } + + /** + * @param string $key + * @param string $value + */ + public static function set( $key, $value ) + { + self::getAccessor()->set( self::getFull(), $key, $value, '.' ); + } +} diff --git a/src/Finwo/Framework/Service/AbstractService.php b/src/Finwo/Framework/Service/AbstractService.php @@ -0,0 +1,8 @@ +<?php + +namespace \Finwo\Framework\Service; + +abstract class AbstractService +{ + +} +\ No newline at end of file diff --git a/web/index.php b/web/index.php @@ -1,3 +1,50 @@ <?php -// Entry point for CGI-like httpd +// Load composer +require implode(DIRECTORY_SEPARATOR, array( + __DIR__, + '..', + 'vendor', + 'autoload.php', +)); + +// Definitions +define('DS', DIRECTORY_SEPARATOR); +define('APPROOT', rtrim(dirname(__DIR__),DS)); + +// Keep the code somewhat short +use \Finwo\Framework\Bundle\AbstractBundle; +use \Finwo\Framework\Config\Config; +use \Finwo\Framework\Service\AbstractService; + +// Initialize router +$router = new Klein\Klein(); + +// Initialize services +$services = array(); +foreach( Config::get('services') as $name => $serviceClass ) { + if(!class_exists($serviceClass)) continue; + $service = new $serviceClass(); + if(!($service instanceof AbstractService)) continue; + $services[$name] = $service; +} +Config::set('service', $services); + +// Initialize registered bundles +$bundles = array(); +foreach( Config::get('bundles') as $bundleName ) { + $class = $bundleName . "\\" . @array_pop(explode("\\",$bundleName)); + if(!class_exists($class)) continue; + $bundle = new $class($router); + if (!($bundle instanceof AbstractBundle)) continue; + array_push($bundles, new $class($router)); +} +Config::set( 'bundles', $bundles ); + +// Handle pre-forked start +if(isset($_SERVER['argc'])) { + require(APPROOT.DS.'init.php'); +} + +// Kickoff the request +$router->dispatch(); +\ No newline at end of file