我试图学习使用Slick来查询MySQL.我有以下类型的查询工作来获取单个Visit对象:
Q.query[(Int,Int), Visit]("""
select * from visit where vistor = ? and location_code = ?
""").firstOption(visitorId,locationCode)
Run Code Online (Sandbox Code Playgroud)
我想知道的是如何更改以上内容以查询以获取Locations集合的List [Visit] ...类似这样的内容:
val locationCodes = List("loc1","loc2","loc3"...)
Q.query[(Int,Int,List[String]), Visit]("""
select * from visit where vistor = ? and location_code in (?,?,?...)
""").list(visitorId,locationCodes)
Run Code Online (Sandbox Code Playgroud)
Slick有可能吗?
我正在尝试在Swift中编写一些cookie,这样当我显示webview时,它将能够读取这些cookie并做出适当的反应.我发现了很多关于如何创建cookie和阅读Apple文档的例子,但我似乎无法获得有效的NSHTTPCookie对象.它总是零.
这是我的代码:
let baseHost = "domain.com"
let oneYearInSeconds = NSTimeInterval(60 * 60 * 24 * 365)
func setCookie(key: String, value: AnyObject) {
var cookieProps = [
NSHTTPCookieOriginURL: baseHost,
NSHTTPCookiePath: "/",
NSHTTPCookieName: key,
NSHTTPCookieValue: value,
NSHTTPCookieSecure: "TRUE",
NSHTTPCookieExpires: NSDate(timeIntervalSinceNow: oneYearInSeconds)
]
var cookie = NSHTTPCookie(properties: cookieProps)
// This line fails due to the nil cookie
NSHTTPCookieStorage.sharedHTTPCookieStorage().setCookie(cookie!)
}
Run Code Online (Sandbox Code Playgroud)
我的cookie变量是nil.我尝试了很多属性的组合,包括NSHTTPCookieOriginURL和NSHTTPCookieDomain,有和没有NSHTTPCookieSecure,甚至没有NSHTTPCookieExpires.永远nil.
有没有人有任何想法我做错了什么?
完全披露......这是我的第一个问题.如果我遗漏任何东西,请善待.;-)
我开始使用Jasmin来测试我的一个客户端Javascript对象.该对象特别管理了一个名为DataTables的jQuery插件的使用.托管的DataTables组件将调用一些自定义渲染方法来确定要为几列显示的内容,并且我正在尝试测试这些方法.
一个简短的问题:如何测试我需要监视的方法的返回值?
背后的故事
这是我的Javascript对象的缩小版本:
function Table(elemId) {
this._table = $('#'+elemId).dataTable({
"aoColumnDefs": [
{
"fnRender": function(oObj, id) {
return Table.renderIdColumn(oObj, id, lTable);
},
"aTargets": ["idColumn"],
"bUseRendered": false
},{
"fnRender": function(oObj, name) {
return Table.renderNameColumn(oObj, name, lTable);
},
"aTargets": ["nameColumn"],
"bUseRendered": false
}
],
"bJQueryUI": true,
"sPaginationType": "full_numbers"
});
}
Table.renderIdColumn = function(oObj, id, lTable) {
return '<input type="checkbox" value="' id + '" />';
};
Table.renderNameColumn = function(oObj, name, lTable) {
var id = oObj.aData[0];
return …Run Code Online (Sandbox Code Playgroud) 我在Scala中编写了一个API.有几个入口点,我期望List [SomeTrait]作为输入并返回List [OtherTrait].
我将Java包含在Java项目中以供使用,并遇到一个问题,试图将java.util.List传递给期望Scala的List对象的方法.我意识到它们不一样,Java不知道如何进行转换.那么,如何在不期望Java调用者传入Scala列表的情况下完成这项工作?
我正在尝试设置Jenkins工作来构建下一个大型Android应用程序!我安装了Android SDK,这部分似乎工作正常.我已经在Jenkins上安装了Gradle Plugin v1.24,现在我想我正在试图弄清楚如何让Gradle实际工作.
第一次尝试是让Jenkins从gradle.org自动下载特定版本.我试图拉v2.2.1,因为这似乎是我的Android应用程序在本地构建的版本.当我这样做时,我在Jenkins的工作中遇到了这个错误:
[Gradle] - Launching build.
Invalid tool ID 2.2.1
[Gradle] - [ERROR] Can't retrieve the Gradle executable.
Build step 'Invoke Gradle script' marked build as failure
Run Code Online (Sandbox Code Playgroud)
我尝试了很多不同的版本但却无法正常工作.所以,接下来要告诉Jenkins从哪里下载Gradle.我把它给了这个位置:
https://services.gradle.org/distributions/gradle-2.2.1-bin.zip
Run Code Online (Sandbox Code Playgroud)
我在构建时遇到了不同的错误,但仍然不太确定该怎么做.
[Gradle] - Launching build.
[Journeyman-Android] $ gradle clean build
FATAL: command execution failed
java.io.IOException: Cannot run program "gradle" (in directory "/var/lib/jenkins/workspace/Journeyman-Android"): error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1047)
at hudson.Proc$LocalProc.<init>(Proc.java:244)
at hudson.Proc$LocalProc.<init>(Proc.java:216)
at hudson.Launcher$LocalLauncher.launch(Launcher.java:816)
at hudson.Launcher$ProcStarter.start(Launcher.java:382)
at hudson.Launcher$ProcStarter.join(Launcher.java:389)
at hudson.plugins.gradle.Gradle.performTask(Gradle.java:262)
at hudson.plugins.gradle.Gradle.perform(Gradle.java:116)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) …Run Code Online (Sandbox Code Playgroud) 我正在使用Java-APNS框架向iOS设备发送推送通知.它工作得非常好(感谢开发人员!)我能够在所有设置正确的情况下发送到我的设备.但是,我想妥善处理失败案件.对于某些情况,应该收到一些记录的APNS错误代码:
我如何创建一些失败案例?我有自己的类实现ApnsDelegate并使用我的委托构造我的ApnsService对象.我已经尝试在我的调用中传递无效令牌以及有效负载的空字符串:
service.push("ab", "")
Run Code Online (Sandbox Code Playgroud)
但仍然会调用我的ApnsDelegate的messageSent方法.我希望这最终会在messageSendFailed方法中结束,或者可能是connectionClosed,但都不会被调用.有没有人测试过这些东西并让它发挥作用?这是我班级的一个例子......我实际上是在Scala中这样做但是如果我发布Java,我会好运.调用时,只会打印"发送给AB的消息".
public class ApnsSender implements ApnsDelegate {
public void send(Notification Notification) {
ApnsService service = getApnsService();
String payload = getPayload(notification);
service.push("ab", "");
}
private ApnsService getApnsService() { ... }
private String getPayload(Notification notification) { ... }
public void messageSent(ApnsNotification message) {
String token = Utilities.toHexString(message.getDeviceToken());
System.out.println("Message sent to " + token);
}
public void messageSendFailed(ApnsNotification message, Throwable e) {
System.out.println("Message failed");
}
public void messageSent(DeliveryError e, Int messageIdentifier) {
System.out.println("Message closed with error code " …Run Code Online (Sandbox Code Playgroud) 我对Scala很新,请原谅我,如果这是一个非常简单的问题,但我找不到任何可以帮助我的东西,或者我找不到正确的搜索条件.我怎样才能做到这一点?
scala> trait Foo
defined trait Foo
scala> class FooImpl extends Foo
defined class FooImpl
scala> trait Bar { def someMethod(foo: Foo) }
defined trait Bar
scala> class BarImpl extends Bar { def someMethod(foo: FooImpl) {} }
<console>:10: error: class BarImpl needs to be abstract, since method someMethod in trait Bar of type (foo: Foo)Unit is not defined
(Note that Foo does not match FooImpl)
class BarImpl extends Bar { def someMethod(foo: FooImpl) {} }
Run Code Online (Sandbox Code Playgroud)
为什么FooImpl与Foo不匹配,因为Foo是一个特质?我猜我需要改变Bar中someMethod的签名,说我期待扩展Foo或"with Foo"的东西,但我似乎无法找到这方面的文档.