Moved template stuff to gcp.
This commit is contained in:
parent
98086f89ac
commit
fe855181af
@ -22,5 +22,5 @@ dependencies {
|
|||||||
}
|
}
|
||||||
|
|
||||||
jar {
|
jar {
|
||||||
archivesBaseName = 'ssg-template'
|
archivesBaseName = 'gcp'
|
||||||
}
|
}
|
@ -1,4 +1,4 @@
|
|||||||
package com.jessebrault.ssg.template.gspe
|
package com.jessebrault.gcp
|
||||||
|
|
||||||
import groovy.transform.PackageScope
|
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
|
import groovy.text.Template
|
||||||
|
|
||||||
class GspeTemplate implements 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.gcp.component.Component
|
||||||
import com.jessebrault.ssg.template.gspe.component.ComponentsContainer
|
import com.jessebrault.gcp.component.ComponentsContainer
|
||||||
import groovy.text.Template
|
import groovy.text.Template
|
||||||
import groovy.text.TemplateEngine
|
import groovy.text.TemplateEngine
|
||||||
import groovy.transform.TupleConstructor
|
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.PackageScope
|
||||||
import groovy.transform.TupleConstructor
|
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.StackFunctionFsmBuilder
|
||||||
import com.jessebrault.fsm.stackfunction.StackFunctionFsmBuilderImpl
|
import com.jessebrault.fsm.stackfunction.StackFunctionFsmBuilderImpl
|
@ -1,4 +1,4 @@
|
|||||||
package com.jessebrault.ssg.template.gspe.component
|
package com.jessebrault.gcp.component
|
||||||
|
|
||||||
interface Component {
|
interface Component {
|
||||||
String render(Map<String, ?> attr, String body)
|
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.gcp.component.ComponentToken.Type
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.ComponentNode
|
import com.jessebrault.gcp.component.node.ComponentNode
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.DollarReferenceValue
|
import com.jessebrault.gcp.component.node.DollarReferenceValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.DollarScriptletValue
|
import com.jessebrault.gcp.component.node.DollarScriptletValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.ExpressionScriptletValue
|
import com.jessebrault.gcp.component.node.ExpressionScriptletValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.GStringValue
|
import com.jessebrault.gcp.component.node.GStringValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.KeyAndValue
|
import com.jessebrault.gcp.component.node.KeyAndValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.KeysAndValues
|
import com.jessebrault.gcp.component.node.KeysAndValues
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.Node
|
import com.jessebrault.gcp.component.node.Node
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.ScriptletValue
|
import com.jessebrault.gcp.component.node.ScriptletValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.StringValue
|
import com.jessebrault.gcp.component.node.StringValue
|
||||||
import groovy.transform.PackageScope
|
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
|
* 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.gcp.component.node.BooleanValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.ComponentNode
|
import com.jessebrault.gcp.component.node.ComponentNode
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.DollarReferenceValue
|
import com.jessebrault.gcp.component.node.DollarReferenceValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.DollarScriptletValue
|
import com.jessebrault.gcp.component.node.DollarScriptletValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.ExpressionScriptletValue
|
import com.jessebrault.gcp.component.node.ExpressionScriptletValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.GStringValue
|
import com.jessebrault.gcp.component.node.GStringValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.KeyAndValue
|
import com.jessebrault.gcp.component.node.KeyAndValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.KeysAndValues
|
import com.jessebrault.gcp.component.node.KeysAndValues
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.NodeVisitor
|
import com.jessebrault.gcp.component.node.NodeVisitor
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.ScriptletValue
|
import com.jessebrault.gcp.component.node.ScriptletValue
|
||||||
import com.jessebrault.ssg.template.gspe.component.node.StringValue
|
import com.jessebrault.gcp.component.node.StringValue
|
||||||
|
|
||||||
// NOT THREAD SAFE, and must be used exactly once
|
// NOT THREAD SAFE, and must be used exactly once
|
||||||
class ComponentToScriptVisitor extends NodeVisitor {
|
class ComponentToScriptVisitor extends NodeVisitor {
|
@ -1,4 +1,4 @@
|
|||||||
package com.jessebrault.ssg.template.gspe.component
|
package com.jessebrault.gcp.component
|
||||||
|
|
||||||
import groovy.transform.TupleConstructor
|
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.FunctionFsmBuilder
|
||||||
import com.jessebrault.fsm.function.FunctionFsmBuilderImpl
|
import com.jessebrault.fsm.function.FunctionFsmBuilderImpl
|
||||||
import com.jessebrault.ssg.template.gspe.PatternFunction
|
import com.jessebrault.gcp.PatternFunction
|
||||||
|
|
||||||
import static ComponentToken.Type
|
import static ComponentToken.Type
|
||||||
|
|
||||||
@ -26,7 +26,6 @@ class ComponentTokenizer {
|
|||||||
//'\u0100' to '\uFFFE'
|
//'\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 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 percent = new PatternFunction(~/^%/)
|
||||||
private static final PatternFunction expressionScriptletGroovy = new PatternFunction(~/^.*?%>/)
|
private static final PatternFunction expressionScriptletGroovy = new PatternFunction(~/^.*?%>/)
|
||||||
private static final PatternFunction forwardSlash = 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.Logger
|
||||||
import org.slf4j.LoggerFactory
|
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.Logger
|
||||||
import org.slf4j.LoggerFactory
|
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
|
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 {
|
class BooleanValue extends Node {
|
||||||
boolean value
|
boolean value
|
@ -1,4 +1,4 @@
|
|||||||
package com.jessebrault.ssg.template.gspe.component.node
|
package com.jessebrault.gcp.component.node
|
||||||
|
|
||||||
class ComponentNode extends 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 {
|
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 {
|
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 {
|
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 {
|
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 {
|
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 {
|
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 {
|
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 {
|
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 {
|
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 groovy.text.TemplateEngine
|
||||||
import org.junit.jupiter.api.Test
|
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.ClosureParams
|
||||||
import groovy.transform.stc.FirstParam
|
import groovy.transform.stc.FirstParam
|
||||||
import groovy.transform.stc.SimpleType
|
import groovy.transform.stc.SimpleType
|
||||||
@ -8,7 +8,7 @@ import org.junit.jupiter.api.Test
|
|||||||
import org.slf4j.Logger
|
import org.slf4j.Logger
|
||||||
import org.slf4j.LoggerFactory
|
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.assertEquals
|
||||||
import static org.junit.jupiter.api.Assertions.assertTrue
|
import static org.junit.jupiter.api.Assertions.assertTrue
|
||||||
|
|
||||||
@ -82,7 +82,7 @@ class ComponentParserTests {
|
|||||||
private void selfClosing(
|
private void selfClosing(
|
||||||
Queue<ComponentToken> tokens,
|
Queue<ComponentToken> tokens,
|
||||||
@DelegatesTo(value = NodeTester, strategy = Closure.DELEGATE_FIRST)
|
@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
|
Closure<Void> tests
|
||||||
) {
|
) {
|
||||||
def componentNode = this.parser.parse(tokens)
|
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.junit.jupiter.api.Test
|
||||||
import org.slf4j.Logger
|
import org.slf4j.Logger
|
||||||
import org.slf4j.LoggerFactory
|
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.assertEquals
|
||||||
import static org.junit.jupiter.api.Assertions.assertTrue
|
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 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
|
import static org.junit.jupiter.api.Assertions.assertEquals
|
||||||
|
|
||||||
class DollarGroovyParserTests {
|
class DollarGroovyParserTests {
|
@ -1,6 +1,6 @@
|
|||||||
package components
|
package components
|
||||||
|
|
||||||
import com.jessebrault.ssg.template.gspe.component.Component
|
import com.jessebrault.gcp.component.Component
|
||||||
|
|
||||||
class Greeting implements Component {
|
class Greeting implements Component {
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
package components
|
package components
|
||||||
|
|
||||||
import com.jessebrault.ssg.template.gspe.component.Component
|
import com.jessebrault.gcp.component.Component
|
||||||
|
|
||||||
class Head implements Component {
|
class Head implements Component {
|
||||||
|
|
@ -1,2 +1,2 @@
|
|||||||
rootProject.name = 'ssg'
|
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