Moved template stuff to gcp.
This commit is contained in:
parent
98086f89ac
commit
fe855181af
@ -22,5 +22,5 @@ dependencies {
|
||||
}
|
||||
|
||||
jar {
|
||||
archivesBaseName = 'ssg-template'
|
||||
archivesBaseName = 'gcp'
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe
|
||||
package com.jessebrault.gcp
|
||||
|
||||
import groovy.transform.PackageScope
|
||||
|
@ -1,6 +1,6 @@
|
||||
package com.jessebrault.ssg.template.gspe
|
||||
package com.jessebrault.gcp
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.ComponentsContainer
|
||||
import com.jessebrault.gcp.component.ComponentsContainer
|
||||
import groovy.text.Template
|
||||
|
||||
class GspeTemplate implements Template {
|
@ -1,7 +1,7 @@
|
||||
package com.jessebrault.ssg.template.gspe
|
||||
package com.jessebrault.gcp
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.Component
|
||||
import com.jessebrault.ssg.template.gspe.component.ComponentsContainer
|
||||
import com.jessebrault.gcp.component.Component
|
||||
import com.jessebrault.gcp.component.ComponentsContainer
|
||||
import groovy.text.Template
|
||||
import groovy.text.TemplateEngine
|
||||
import groovy.transform.TupleConstructor
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe
|
||||
package com.jessebrault.gcp
|
||||
|
||||
import groovy.transform.PackageScope
|
||||
import groovy.transform.TupleConstructor
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe
|
||||
package com.jessebrault.gcp
|
||||
|
||||
import com.jessebrault.fsm.stackfunction.StackFunctionFsmBuilder
|
||||
import com.jessebrault.fsm.stackfunction.StackFunctionFsmBuilderImpl
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
interface Component {
|
||||
String render(Map<String, ?> attr, String body)
|
@ -0,0 +1,5 @@
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
interface ComponentFactory {
|
||||
Component get()
|
||||
}
|
@ -1,19 +1,19 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.ComponentToken.Type
|
||||
import com.jessebrault.ssg.template.gspe.component.node.ComponentNode
|
||||
import com.jessebrault.ssg.template.gspe.component.node.DollarReferenceValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.DollarScriptletValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.ExpressionScriptletValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.GStringValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.KeyAndValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.KeysAndValues
|
||||
import com.jessebrault.ssg.template.gspe.component.node.Node
|
||||
import com.jessebrault.ssg.template.gspe.component.node.ScriptletValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.StringValue
|
||||
import com.jessebrault.gcp.component.ComponentToken.Type
|
||||
import com.jessebrault.gcp.component.node.ComponentNode
|
||||
import com.jessebrault.gcp.component.node.DollarReferenceValue
|
||||
import com.jessebrault.gcp.component.node.DollarScriptletValue
|
||||
import com.jessebrault.gcp.component.node.ExpressionScriptletValue
|
||||
import com.jessebrault.gcp.component.node.GStringValue
|
||||
import com.jessebrault.gcp.component.node.KeyAndValue
|
||||
import com.jessebrault.gcp.component.node.KeysAndValues
|
||||
import com.jessebrault.gcp.component.node.Node
|
||||
import com.jessebrault.gcp.component.node.ScriptletValue
|
||||
import com.jessebrault.gcp.component.node.StringValue
|
||||
import groovy.transform.PackageScope
|
||||
|
||||
import static com.jessebrault.ssg.template.gspe.component.ComponentToken.Type.*
|
||||
import static com.jessebrault.gcp.component.ComponentToken.Type.*
|
||||
|
||||
/**
|
||||
* NOT thread safe
|
@ -1,16 +1,16 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.node.BooleanValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.ComponentNode
|
||||
import com.jessebrault.ssg.template.gspe.component.node.DollarReferenceValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.DollarScriptletValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.ExpressionScriptletValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.GStringValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.KeyAndValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.KeysAndValues
|
||||
import com.jessebrault.ssg.template.gspe.component.node.NodeVisitor
|
||||
import com.jessebrault.ssg.template.gspe.component.node.ScriptletValue
|
||||
import com.jessebrault.ssg.template.gspe.component.node.StringValue
|
||||
import com.jessebrault.gcp.component.node.BooleanValue
|
||||
import com.jessebrault.gcp.component.node.ComponentNode
|
||||
import com.jessebrault.gcp.component.node.DollarReferenceValue
|
||||
import com.jessebrault.gcp.component.node.DollarScriptletValue
|
||||
import com.jessebrault.gcp.component.node.ExpressionScriptletValue
|
||||
import com.jessebrault.gcp.component.node.GStringValue
|
||||
import com.jessebrault.gcp.component.node.KeyAndValue
|
||||
import com.jessebrault.gcp.component.node.KeysAndValues
|
||||
import com.jessebrault.gcp.component.node.NodeVisitor
|
||||
import com.jessebrault.gcp.component.node.ScriptletValue
|
||||
import com.jessebrault.gcp.component.node.StringValue
|
||||
|
||||
// NOT THREAD SAFE, and must be used exactly once
|
||||
class ComponentToScriptVisitor extends NodeVisitor {
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import groovy.transform.TupleConstructor
|
||||
|
@ -1,8 +1,8 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import com.jessebrault.fsm.function.FunctionFsmBuilder
|
||||
import com.jessebrault.fsm.function.FunctionFsmBuilderImpl
|
||||
import com.jessebrault.ssg.template.gspe.PatternFunction
|
||||
import com.jessebrault.gcp.PatternFunction
|
||||
|
||||
import static ComponentToken.Type
|
||||
|
||||
@ -26,7 +26,6 @@ class ComponentTokenizer {
|
||||
//'\u0100' to '\uFFFE'
|
||||
private static final PatternFunction dollarReference = new PatternFunction(~/^\$[a-zA-Z_$\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u00ff\u0100-\ufff3][a-zA-Z_$0-9\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u00ff\u0100-\ufff3]*(?=[\s\/>])/)
|
||||
|
||||
private static final PatternFunction dollarOpen = new PatternFunction(~/^\$\{/)
|
||||
private static final PatternFunction percent = new PatternFunction(~/^%/)
|
||||
private static final PatternFunction expressionScriptletGroovy = new PatternFunction(~/^.*?%>/)
|
||||
private static final PatternFunction forwardSlash = new PatternFunction(~/^\//)
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
|
||||
import java.lang.annotation.Retention
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class BooleanValue extends Node {
|
||||
boolean value
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class ComponentNode extends Node {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class DollarReferenceValue extends Node {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class DollarScriptletValue extends Node {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class ExpressionScriptletValue extends Node {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class GStringValue extends Node {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class KeyAndValue extends Node {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class KeysAndValues extends Node {
|
||||
|
@ -0,0 +1,5 @@
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
abstract class Node {
|
||||
List<Node> children = []
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
abstract class NodeVisitor {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class ScriptletValue extends Node {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
package com.jessebrault.gcp.component.node
|
||||
|
||||
class StringValue extends Node {
|
||||
|
@ -1,6 +1,8 @@
|
||||
package com.jessebrault.ssg.template.gspe
|
||||
package com.jessebrault.gcp
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.Component
|
||||
import com.jessebrault.gcp.GspeTemplate
|
||||
import com.jessebrault.gcp.GspeTemplateEngine
|
||||
import com.jessebrault.gcp.component.Component
|
||||
import groovy.text.TemplateEngine
|
||||
import org.junit.jupiter.api.Test
|
||||
|
@ -1,6 +1,6 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.node.*
|
||||
import com.jessebrault.gcp.component.node.*
|
||||
import groovy.transform.stc.ClosureParams
|
||||
import groovy.transform.stc.FirstParam
|
||||
import groovy.transform.stc.SimpleType
|
||||
@ -8,7 +8,7 @@ import org.junit.jupiter.api.Test
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
import static com.jessebrault.ssg.template.gspe.component.ComponentToken.Type.*
|
||||
import static com.jessebrault.gcp.component.ComponentToken.Type.*
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue
|
||||
|
||||
@ -82,7 +82,7 @@ class ComponentParserTests {
|
||||
private void selfClosing(
|
||||
Queue<ComponentToken> tokens,
|
||||
@DelegatesTo(value = NodeTester, strategy = Closure.DELEGATE_FIRST)
|
||||
@ClosureParams(value = SimpleType, options = ['com.jessebrault.ssg.template.gspe.component.node.ComponentNode'])
|
||||
@ClosureParams(value = SimpleType, options = ['com.jessebrault.gcp.component.node.ComponentNode'])
|
||||
Closure<Void> tests
|
||||
) {
|
||||
def componentNode = this.parser.parse(tokens)
|
@ -1,11 +1,11 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
|
||||
import org.junit.jupiter.api.Test
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
|
||||
import static com.jessebrault.ssg.template.gspe.component.ComponentToken.Type.*
|
||||
import static com.jessebrault.gcp.component.ComponentToken.Type.*
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue
|
||||
|
@ -1,8 +1,8 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
package com.jessebrault.gcp.component
|
||||
|
||||
import org.junit.jupiter.api.Test
|
||||
|
||||
import static com.jessebrault.ssg.template.gspe.component.DollarGroovyParser.parse
|
||||
import static com.jessebrault.gcp.component.DollarGroovyParser.parse
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals
|
||||
|
||||
class DollarGroovyParserTests {
|
@ -1,6 +1,6 @@
|
||||
package components
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.Component
|
||||
import com.jessebrault.gcp.component.Component
|
||||
|
||||
class Greeting implements Component {
|
||||
|
@ -1,6 +1,6 @@
|
||||
package components
|
||||
|
||||
import com.jessebrault.ssg.template.gspe.component.Component
|
||||
import com.jessebrault.gcp.component.Component
|
||||
|
||||
class Head implements Component {
|
||||
|
@ -1,2 +1,2 @@
|
||||
rootProject.name = 'ssg'
|
||||
include 'cli', 'lib', 'template'
|
||||
include 'cli', 'gcp', 'lib'
|
@ -1,5 +0,0 @@
|
||||
package com.jessebrault.ssg.template.gspe.component
|
||||
|
||||
interface ComponentFactory {
|
||||
Component get()
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
package com.jessebrault.ssg.template.gspe.component.node
|
||||
|
||||
abstract class Node {
|
||||
List<Node> children = []
|
||||
}
|
Loading…
Reference in New Issue
Block a user